Avatar billede woopass Nybegynder
26. april 2006 - 11:11 Der er 5 kommentarer og
1 løsning

Gridview link til gridview

Davs

Jeg har et gridview som viser en liste over personer, hentet fra DB. Jeg vil gerne have at man kan klikke på et navn og få vist detaljerne for personen (også fra DB men fra tabel nr. 2), men hvordan gøres dette bedst muligt?

Kan man lave et gridview_A som har en HyperLinkField som så skifter gridview_A ud med gridview_B som har detaljerne?
Avatar billede dr_chaos Nybegynder
26. april 2006 - 11:15 #1
kig her :
http://asp.net/QuickStart/aspnet/doc/ctrlref/data/detailsview.aspx
Du skal bruge et masters detailsview.
Hvor gridview er master og details view giver yderligere oplysninger.
Avatar billede woopass Nybegynder
26. april 2006 - 15:12 #2
Rigtigt godt eksempel der dr_chaos

Smid lige svar så jeg kan få delt pebernødder ud :D

Jeg brugte eksemplet og lavede det om til mit codebehind og det kører bare fint

Her er lidt tilpasset guf:
Protected Sub GridView1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles GridView1.Load

        Dim objConnection As SqlConnection
        Dim objCommand As SqlCommand
        Dim objAdapter As SqlDataAdapter
        Dim objDataSet As DataSet
        Dim strSQLQuery As String

            objConnection = New SqlConnection("  ")

            strSQLQuery = "SELECT * FROM Personer;"

            objCommand = New SqlCommand(strSQLQuery, objConnection)

            ' Get a DataSet to bind the DataGrid to
            objAdapter = New SqlDataAdapter(objCommand)
            objDataSet = New DataSet()
            objAdapter.Fill(objDataSet)

            ' DataBind DG to DS
            GridView1.DataSource = objDataSet
            GridView1.DataBind()

            objConnection.Close()
    End Sub

    Protected Sub GridView1_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles GridView1.SelectedIndexChanged

        DetailsView1_Load()
    End Sub

    Protected Sub DetailsView1_Load()

        Dim objConnection As SqlConnection
        Dim objCommand As SqlCommand
        Dim objAdapter As SqlDataAdapter
        Dim objDataSet As DataSet
        Dim strSQLQuery As String

            objConnection = New SqlConnection("  ")

            strSQLQuery = "SELECT * FROM Detaljer where navn = " & "'" & GridView1.SelectedValue & "'" & ";"

            objCommand = New SqlCommand(strSQLQuery, objConnection)

            ' Get a DataSet to bind the DataGrid to
            objAdapter = New SqlDataAdapter(objCommand)
            objDataSet = New DataSet()
            objAdapter.Fill(objDataSet)

            ' DataBind DG to DS
            DetailsView1.DataSource = objDataSet
            DetailsView1.DataBind()

            objConnection.Close()
    End Sub
Avatar billede woopass Nybegynder
26. april 2006 - 15:29 #3
Et lille bonus ?

Kan man i DetailsView lave en art: java script: history.go(-1) link?
Avatar billede dr_chaos Nybegynder
27. april 2006 - 08:00 #4
Ja men det vil jo bare svare til at bruge back button.
du kan evt ligge et link i et templatefield.
Avatar billede woopass Nybegynder
27. april 2006 - 09:41 #5
Tak for hjælpen
Avatar billede dr_chaos Nybegynder
27. april 2006 - 09:42 #6
np :)
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester