我有gridview,其中我有复选框控件就像这张图片。
问题是我想使用checked status.Mean的值,如果检查状态,那么我想将值分配给像867,864
这样的字符串。我在这里尝试了一些代码,但它没有正常工作
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
而不是867,864
。请任何人帮助获得所需的输出
答案 0 :(得分:0)
Dim bpv As String = ""
For Each gvrow As GridViewRow In GridView5.Rows
Dim chkbox As CheckBox = (CheckBox)gvrow.FindControl("chkStatusGM");
If chkbox!= null && chkbox.Checked Then
If bpv <> "" Then
bpv += ","
End If
bpv += gvrow.Cells(3).Text
End If
Next
Response.Write(bpv)
答案 1 :(得分:0)
很抱歉在C#中给出答案,因为我不熟悉VB,你可以使用在线转换器将代码转换为VB
我发现的错误是您应该采用索引并递增,以便检测下面选中的下一个复选框:
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++;
}
例如在这种情况下j
是索引并递增它。
希望这会有所帮助:D