5

我想使用复选框获取从 gridview 中选择的行。复选框是这样的! <asp:TemplateField ShowHeader="False"> <ItemTemplate> <asp:CheckBox ID="CheckBox1" runat="server" oncheckedchanged="CheckBox1_CheckedChanged" /> </ItemTemplate> </asp:TemplateField> 我想在每一行中得到一列。怎么做.thx!

4

2 回答 2

4

试试这个:

protected void CheckBox1_CheckedChanged(object sender, System.EventArgs e)
{
    CheckBox checkbox = (CheckBox)sender;
    GridViewRow row = (GridViewRow)checkbox.NamingContainer;
    if (checkbox.Checked == true) {
        row.BackColor = System.Drawing.Color.Red;
        mygridview.Columns(0).Visible = false;
    }
}
于 2011-04-08T10:58:40.533 回答
2

您可以遍历 GridView 行并使用 FindControl 检索 Checkbox,然后获取它们的 IsChecked 属性。

foreach (GridViewRow row in grid.Rows)
{
  CheckBox check = (CheckBox)row.FindControl("CheckboxID");

  if (CheckBox1.Checked)
  {
   ...
  } 
}
于 2011-04-08T10:11:28.900 回答