【问题标题】:Selecting Multiple Check Boxes Inside a Grid View Control by clicking the Column Label Header通过单击列标签标题选择网格视图控件内的多个复选框
【发布时间】:2010-10-27 09:05:23
【问题描述】:

我有一个带有模板字段的网格视图控件,其中包含项目模板作为复选框控件 并且标题模板包含带有列标题名称的标签。

我想点击列标题标签,所有的复选框都必须勾选一次。

请提供一些示例或想法,我可以如何实现这一目标

<asp:GridView ID="GridView2" runat="server" AutoGenerateColumns="False" CellPadding="4"
        ForeColor="#333333" GridLines="None" >
        <AlternatingRowStyle BackColor="White" ForeColor="#284775" />
        <Columns>
            <asp:TemplateField HeaderText="" >
            <ItemTemplate>
            <asp:CheckBox ID="val_id" runat="server" />
            </ItemTemplate>
            <HeaderTemplate>
            <label>
            Rise Needed
            </label>
            </HeaderTemplate>
            </asp:TemplateField>
        <Columns>

【问题讨论】:

    标签: c# javascript asp.net gridview


    【解决方案1】:

    将您的 HeaderTemplate 标签更改为 LinkBut​​ton 并分配 Click 事件。

            <HeaderTemplate>       
            <asp:LinkButton ID="btnRiseNeeded" runat="server" Text="Rise Needed" OnClick="btnRiseNeeded_Click" />       
            </HeaderTemplate>  
    

    然后,当单击按钮时,循环遍历您的 GridView 行并选中该框。

    foreach(var row in GridView2.Rows)
    {
       var cbx = (CheckBox)row.FindControl("val_id");
       cbx.Checked = true;
    }
    

    这段代码不在我的脑海中,所以可能需要一些修改。另外,我不确定复选框是否会在 PostBack 上保持选中状态。试试看吧。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多