Question Add checkbox into itemtemplate datagrid inside datagrid

abelan

New member
Joined
Oct 8, 2008
Messages
1
Programming Experience
3-5
I already have codes to created datagrid inside datagrid. my problem is...how to add checkbox into itemtemplate to the inside datagrid.Please refer to attached file...

my sample code :
VB.NET:
 Private Function RunQuery(ByVal id As String) As DataTable

        Dim sqlclient As New SqlDataSource
        Dim sqlConnectionString As String = WebConfigurationManager.ConnectionStrings("Connection").ConnectionString

        Dim sqlConnection As SqlClient.SqlConnection = New SqlClient.SqlConnection(sqlConnectionString)

        Dim sqlCommand As SqlClient.SqlCommand = New SqlClient.SqlCommand("SELECT a.NamaTemaData, b.NamaLapisanData " _
        & "FROM tblRefTemaData a, tblRefLapisanData b, tblSysCapaianLapisanData c " _
        & "WHERE a.KodTemaData=b.KodTema and b.kodLapisanData=c.KodLapisanData and c.KodPemilik =@kodAgensi")

        Dim sqlParam1 As SqlClient.SqlParameter = New SqlClient.SqlParameter("@kodAgensi", id)

        sqlCommand.Parameters.Add(sqlParam1)

        sqlCommand.Connection = sqlConnection

        sqlConnection.Open()

        Dim dt As New DataTable
        Dim dr As DataRow


        Dim tcol As New TemplateColumn()
        With tcol
            .HeaderText = "CheckBox Column"
            ' Call DynamicItemTemplate to add the child controls to the Template 
            ' Column and bind them to the Data source.    
            .ItemTemplate = New DynamicItemTemplate()
        End With

        'DataGrid1.Columns.Add(tcol)

        dt.Columns.Add("Tema Name")
        dt.Columns.Add("Layer Name")
        'dt.Columns.Add(tcol)
        dt.Columns.Add("checkbox")

        

        Dim md As SqlClient.SqlDataReader
        md = sqlCommand.ExecuteReader(CommandBehavior.CloseConnection)
        Dim tema, tema1 As String
        Dim l As New Literal()

        tema1 = ""
        While md.Read
          
            tema = (CType(md.GetValue(md.GetOrdinal("NamaTemaData")), String))
            dr = dt.NewRow

            If tema1 = "" Then
                dr("Tema Name") = (CType(md.GetValue(md.GetOrdinal("NamaTemaData")), String)) 'pembekal(kodpembekal)
                dr("Layer Name") = (CType(md.GetValue(md.GetOrdinal("NamaLapisanData")), String))
                tcol.ItemTemplate = New DynamicItemTemplate()
                dr("CheckBox") = tcol.ItemTemplate


            ElseIf tema1 <> tema Then

                dr("Tema Name") = (CType(md.GetValue(md.GetOrdinal("NamaTemaData")), String)) 'pembekal(kodpembekal)
                dr("Layer Name") = (CType(md.GetValue(md.GetOrdinal("NamaLapisanData")), String))
                tcol.ItemTemplate = New DynamicItemTemplate()
                dr("CheckBox") = tcol.ItemTemplate
            Else
                'dr("Nama Tema") = (CType(md.GetValue(md.GetOrdinal("NamaTemaData")), String)) 'pembekal(kodpembekal)
                dr("Layer Name") = (CType(md.GetValue(md.GetOrdinal("NamaLapisanData")), String))
                'dr("CheckBox") = cb
                tcol.ItemTemplate = New DynamicItemTemplate()
                dr("CheckBox") = tcol.ItemTemplate

            End If

            dt.Rows.Add(dr)
            tema1 = tema

        End While

        Return dt

        md.Close()


    End Function
datagrid.JPG
 
Last edited by a moderator:
Back
Top