Impostando le celle come Button
Non so se questo nella vers.2.0 sia possibile, ma mi sembra strano...
Comunque, mettiamo di avere un datagrid che nella colonna 10 ha i famosi bottoni true/false:
Per rilevare un click fatto in un controllo -figlio- del datagrid, devi usare l'evento ItemCommand. Successivamente puoi cambiare il testo del pulsante cercandolo nella cella...
codice:
Private Sub datagrid_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) Handles datagrid.ItemCommand
Dim bottone As New Button
' Cerco il bottone nella cella 10 e lo assegno al mio bottone appena istanziato
bottone = CType(e.Item.Cells(10).FindControl("id_bottone_nel_datagrid"), Button)
' Accesso al db
Dim valore As String '= valore preso dal DB
bottone.Text = valore
End Sub
...Per impostarlo all'inizio, il testo, invece, puoi usare l'evento ItemDataBound:
codice:
Private Sub datagrid_ItemDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles datagrid_ItemDataBound
If e.Item.ItemType = ListItemType.AlternatingItem Or e.Item.ItemType = ListItemType.Item Then
' Accedo al DB e recupero il valore true o false
Dim valore As Boolean '= true o false recuperato dal DB
Dim bottone As New Button
bottone = CType(e.Item.Cells(10).FindControl("id_bottone_nel_datagrid"), Button)
bottone.Text = valore
End If
End Sub
@max mercury: