Asp.net 获取数组列表中的gridview列值

Asp.net 获取数组列表中的gridview列值,asp.net,vb.net,gridview,checkbox,Asp.net,Vb.net,Gridview,Checkbox,我有gridview,在其中我有复选框控件,如下图所示 问题是我想使用checked status的值。也就是说,如果status为checked,那么我想将这些值分配给这样的字符串867864。我在这里尝试了一些代码,但它不能正常工作 For Each gvrow As GridViewRow In GridView5.Rows Dim chkbox As CheckBox = CType(gvrow.FindControl("chkStatusGM"), Check

我有gridview,在其中我有复选框控件,如下图所示

问题是我想使用checked status的值。也就是说,如果status为checked,那么我想将这些值分配给这样的字符串
867864
。我在这里尝试了一些代码,但它不能正常工作

For Each gvrow As GridViewRow In GridView5.Rows
            Dim chkbox As CheckBox = CType(gvrow.FindControl("chkStatusGM"), CheckBox)
            If chkbox.Checked Then
                Dim bpv As String = GridView5.Rows(0).Cells(3).Text
                Response.Write(bpv)
End If
        Next
但是输出是
867867
而不是我想要的
867864
。请任何人帮助获得所需的输出
Dim bpv As String=“”
对于GridView5.Rows中作为GridViewRow的每个gvrow
Dim chkbox As CheckBox=(CheckBox)gvrow.FindControl(“chkStatusGM”);
如果chkbox!=null&&chkbox。然后选中
如果bpv为“”,则
bpv+=“,”
如果结束
bpv+=gvrow.Cells(3).Text
如果结束
下一个
响应写入(bpv)

很抱歉用C语言回答您,因为我对VB不熟悉,您可以使用在线转换器将代码转换为VB

我发现的错误是,您应该使用索引和增量来检测下一个复选框,如下所示:

例如,在本例中,
j
是索引,并将其递增


希望这有帮助:D

Sir现在的输出是
867867
,但我想
867864
根据复选框的选择。我想你是根据复选框的选择来固定单元格3的列表行的值,而不是动态地,因为我选择了
BPV 863
,但它再次返回了
868868
,现在我从“bpv+=GridView5(0).Cells(3).Text”到“bpv+=gvrow.Cells(3).Text”。现在我运行良好,因为首先我发现代码内部没有修复行(0)…现在我修复并解决了它
int j = 0;
foreach (GridViewRow gvRow in GridView1.Rows)
{
    CheckBox chkSel = (CheckBox)gvRow.FindControl("SelectCheck");
    if (chkSel.Checked)
    {
        string Delete = Convert.ToString(GridView1.Rows[j].Cells[3].Text);
        //Cells[3] is the column to get one by one rows ceslls[3] columns
        Bal_add.Delete(Delete);
    }
    j++;
}