Datagrids binds automatiskt när man laddar en sida. Hur göra man för att undvika detta. Tex om man vill göra ett val innan griddet fylls med en massa data
vill inte binda datatrid
5 svar · 370 visningar · startad av neversleep
Kör du med den inbyggda datasource funktionaliteten?
Annars om du anropar databasen själv borde du ju kunna göra i stort sett vad som helt innan du binder den till grid'en
neversleep skrev:
Datagrids binds automatiskt när man laddar en sida. Hur göra man för att undvika detta. Tex om man vill göra ett val innan griddet fylls med en massa data
Gör de verkligen? Jag har alltid fått köra dg.DataSource = data och dg.DataBind() men det är det du menar kanske?
jag kör med datasource..och då sker allting autmagiskt, och det vill jag inte
Om du kör utan datasource och istället hämtar allting från databasen till en SqlDataReader eller dyl. så binder du själv datan till datagriden. Så välj att inte ha någon datasource kopplad till datagriden och hämta all data till en DataReader och kör sedan:
datagrid1.DataSource = dataReader1;
datagrid1.DataBind();
efter att du gjort det du vill göra innan datan binds till griden.
det är det enklaste sättet jag vet eftersom man har nästan iaf
full koll på vad som binds tillkontrollen.
Det finns hur många sätt som helst att binda data till en datagrid, du kan göra det med dataview, datatable osv osv.
Vill du verkligen vara anal och sköta datatyps konverteringar osv så sköter du detta i DataGrid_ItemDataBound () Handles DataGrid.ItemDataBound, du kan även komma åt vad som sker i dina datagrid kontroller när du gör en update eller går in i edit med DataGrid_UpdateCommand () Handles DataGrid.UpdateCommand, DataGrid_DeleteCommand() Handles DataGrid.DeleteCommand