02. februar 2006 - 22:58Der er
11 kommentarer og 1 løsning
Vælg indsat record i gridview efter oprettelse i detailsview
Jeg har et gridview og et detailsview ved siden af hinanden i Visual Studio 2005 (ASP.NET 2.0). Jeg opretter nye records i detailsview. Når jeg opretter en ny record i detailsview bruger jeg OnItemInserted eventen til binde til data igen så gridview'et bliver opdateret:
Gridview1.DataBind();
Det virker fint. Mit spørgsmål er så: Hvordan sørger jeg for at den nyindsatte record i gridview'et bliver valgt med det samme, så den også er valgt i detailsview'et? Jeg har på fornemmelsen at jeg skal bruge GridViewSelectEventArgs Class, men jeg er ikke helt sikker på, hvad jeg skal gøre.
Skal det ikke være Gridview1.SelectedIndex = ? Hvad er det helt nøjagtigt SelectedIndex skal være lig med? Det skal være lig med den sidst indsatte record i gridview'et. Med andre ord: Hvad er det der skal stå på den højre side af lighedstegnet?
Jeg vil faktisk gerne sætte GridView1.SelectedIndex = "Det BookID" jeg lige netop har oprettet, hvor BookID er bogens ISBN # (primær nøgle oprettet som streng-felt i databasen). Er det muligt?
Hvad med den værdi jeg søger efter? BookID er jo en ny værdi for hver ny record jeg sætter ind. Med andre ord: Hvordan erstatter jeg "etisbn" med lige nøjagtig det BookID som jeg har sat ind?
Har fundet resten af løsningen selv, men send alligevel som svar så du kan få dine point. Tak for hjælpen. Jeg indsætter lige løsningen i tilfælde af, at andre kan bruge den.
Hmmm - det virker stadigvæk ikke. Jeg får indsat den nye record uden problemer, men den vælger stadig ikke den nye record i gridview'et. Jeg har prøvet at debugge nu for at se hvad der går galt. Når jeg initialiserer variablen bookAddedID får den den rigtige værdi (f.eks. "0-1234-3456-0"). Men når jeg kommer ned til r.Cells[0].Text er værdien "" (tom). Hvad går der galt her??
Så virker det. Det var mit columnindex der var problemet som du (dr chaos) havde gjort mig opmærksom på det til at starte med. BookID har i mit grid columnindex 1, så Cells[1] er den rigtige løsning i mit gridview. Send som svar, dr chaos, så får du dine point. Mange tak for hjælpen!!
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.