C# 当复选框选中状态变为true时,如何发布gridview行数据?

C# 当复选框选中状态变为true时,如何发布gridview行数据?,c#,asp.net,vb.net,gridview,checkbox,C#,Asp.net,Vb.net,Gridview,Checkbox,场景 想象一个有三列的gridview 列A包含特定于行的值 列B包含一个复选框 列C包含一个按钮 当前 使用row命令(如下所示)在单击按钮时发布数据 仅当选中“行”复选框时,才会过帐数据 示例 Protected Sub gv_RowCommand(ByVal sender As Object, ByVal e As GridViewCommandEventArgs) Dim rowIndex As Integer = Convert.ToInt32(e.CommandArgum

场景

  • 想象一个有三列的gridview
  • A包含特定于行的
  • B包含一个复选框
  • C包含一个按钮
当前

  • 使用row命令(如下所示)在单击按钮时发布数据
  • 仅当选中“行”复选框时,才会过帐数据
示例

Protected Sub gv_RowCommand(ByVal sender As Object, ByVal e As GridViewCommandEventArgs)
  Dim rowIndex As Integer = Convert.ToInt32(e.CommandArgument)
  Dim row As GridViewRow = gv.Rows(rowIndex)
  Dim CB As Boolean = DirectCast(row.FindControl("cb"), CheckBox).Checked

  If (e.CommandName = "Save") Then
    If CB = True Then
      /*Post Data*/
    End If
  End If
End Sub
问题

当复选框选中状态变为true时,如何发布gridview行数据

要求:B需要读取列A的值。不需要同时使用列C

如何使用绑定到gridview行的复选框提交数据
  Protected Sub cb_CheckedChanged(sender As Object, e As EventArgs)
    Dim row As GridViewRow = DirectCast(DirectCast(sender, CheckBox).NamingContainer, GridViewRow)
    Dim rowIndex As Integer = row.RowIndex
    Dim cb As CheckBox = DirectCast(gv.Rows(rowIndex).FindControl("cb"), CheckBox)
  End Sub