在 C# 的 GridView 控件中,可以通过以下步骤实现当 CheckBox 被选中时触发事件:
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False">
<Columns>
<asp:TemplateField>
<HeaderTemplate>
<asp:CheckBox ID="chkHeader" runat="server" />
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="chkSelect" runat="server" OnCheckedChanged="chkSelect_CheckedChanged" AutoPostBack="True" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="Name" HeaderText="Name" />
<asp:BoundField DataField="Age" HeaderText="Age" />
</Columns>
</asp:GridView>
在代码文件中添加一个 CheckBox 选中改变事件的处理程序,例如“chkSelect_CheckedChanged”:
protected void chkSelect_CheckedChanged(object sender, EventArgs e)
CheckBox chkSelect = sender as CheckBox;
GridViewRow gridViewRow = chkSelect.NamingContainer as GridViewRow;
// 在这里添加选中 CheckBox 时的操作
在事件处理程序中,首先获取触发事件的 CheckBox 实例,并从该实例的 NamingContainer 属性中获取 GridViewRow 对象。通过 GridViewRow 对象可以访问 GridView 中其他列的数据,以便在 CheckBox 选中时进行适当的操作。
需要注意的是,CheckBox 的 AutoPostBack 属性必须设置为 True,以便在选中时触发事件。另外,如果 GridView 绑定的数据来自数据源,需要在页面加载时重新绑定数据以更新 CheckBox 状态。