【问题标题】:How to Set the Checkbox value inside GridView?如何在 GridView 中设置复选框值?
【发布时间】:2013-07-22 15:56:41
【问题描述】:

如何设置位于 Gridview 内的 CheckBox 值?

  <asp:GridView ID="gviewPermission" runat="server" 
        onrowdatabound="gviewPermission_RowDataBound" 
        onrowupdated="gviewPermission_RowUpdated" 
        onrowupdating="gviewPermission_RowUpdating">
        <Columns>
            <asp:TemplateField HeaderText="Allow" ItemStyle-HorizontalAlign="Center">
                <ItemTemplate>
                    <asp:CheckBox ID="Check_Allow" runat="server" />
                </ItemTemplate>
            </asp:TemplateField>
            <asp:TemplateField HeaderText="Deny" ItemStyle-HorizontalAlign="Center">
                <ItemTemplate>
                    <asp:CheckBox ID="Check_Deny" runat="server" />
                </ItemTemplate>
            </asp:TemplateField>
        </Columns>
    </asp:GridView>

复选框的值必须根据某些条件设置......

【问题讨论】:

    标签: asp.net gridview checkbox


    【解决方案1】:

    gviewPermission_RowDataBound 函数中做:

    if(e.Row.RowType == DataControlRowType.DataRow)
       ((CheckBox)e.Row.FindControl("Check_Allow")).Checked = SomeCondition;
    

    或者,如果条件直接来自数据源,您可以这样做:

     <ItemTemplate>
        <asp:CheckBox ID="Check_Allow" runat="server" 
                      Checked='<%# Eval("ConditionFromDs") %>' />
     </ItemTemplate>
    

    【讨论】:

      【解决方案2】:

      如果 column 的值是布尔值,那么。试试下面的代码

      <ItemTemplate>
        <center>
            <asp:CheckBox ID="chkSelect" Checked='<%#Convert.ToBoolean(Eval("isChecked"))%>' runat="server"></asp:CheckBox></center>
       </ItemTemplate>
      

      其中“isChecked”是列名。

      【讨论】:

        【解决方案3】:

        CheckBox 控件有一个名为Checked 的属性,其作用类似于html 对应属性。所以在 aspx 标记中设置这个属性:

        <asp:CheckBox ID="Check_Allow" runat="server" Checked='<%= someCondition == true %>' />
        

        或在您的代码隐藏中。

        【讨论】:

          【解决方案4】:
            <ItemTemplate>
                      <asp:CheckBox runat="server" checked='<%# bool.Parse(Eval("check").ToString()) %>'  ID="chkselet" />
            </ItemTemplate>
          

          校验值必须为真或假

          【讨论】:

            猜你喜欢
            • 2015-09-17
            • 2011-09-20
            • 1970-01-01
            • 1970-01-01
            • 2015-05-31
            • 2012-09-23
            • 1970-01-01
            • 2012-03-06
            • 2021-10-23
            相关资源
            最近更新 更多