酬佳节,须酩酊,莫相违:具有相当挑战的c#.net datagrid问题!

来源:百度文库 编辑:高考问答 时间:2024/04/29 04:58:06
代码如下:在模板列里有一个HeaderTemplate,里面包含一个CheckBox1,如果在单击checkBox1时让ItemTemplate里的CheckBox2全选呢?

<asp:DataGrid id=DataGrid1 style="Z-INDEX: 101; LEFT: 16px; POSITION: absolute; TOP: 88px" runat="server" AutoGenerateColumns="False" GridLines="None" DataSource="<%# dataSet11 %>">
<Columns>
<asp:TemplateColumn>
<HeaderTemplate>
<asp:CheckBox id="CheckBox1" runat="server"></asp:CheckBox>
</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox id="CheckBox2" runat="server"></asp:CheckBox>
</ItemTemplate>
</asp:TemplateColumn>
<asp:BoundColumn DataField="title_id" SortExpression="title_id" HeaderText="title_id"></asp:BoundColumn>
<asp:BoundColumn DataField="price" SortExpression="price" HeaderText="price"></asp:BoundColumn>
<asp:BoundColumn DataField="type" SortExpression="type" HeaderText="type"></asp:BoundColumn>
</Columns>
</asp:DataGrid>

在ItemDataBound里写如下代码:
if((e.Item.ItemType == ListItemType.Item) || (e.Item.ItemType == ListItemType.AlternatingItem))
{
CheckBox chkb1 = (CheckBox)e.Item.FindControl("CheckBox1");
CheckBox chkb2 = (CheckBox)e.Item.FindControl("CheckBox2");
if(chkb1.checked == true)
{
chkb2.checked =true
}
}