• GridView中CheckBox的数据绑定显示选中和未选中问题


    效果如下(以会员价为例)

    会员价(MemberPrice)字段的数据库类型为int(1表示true,0表示false)

    页面绑定如下:

    <asp:TemplateField HeaderText="会员价">
        <ItemStyle HorizontalAlign="Center" Width="60px" />
            <ItemTemplate>
                <asp:CheckBox ID="cbMemberPrice1" runat="server" 
                      Checked='<%# Convert.ToBoolean(Eval("MemberPrice")) %>' />
        </ItemTemplate>
    </asp:TemplateField>
    View Code

    绑定也可换成:Checked = ‘<%#(Eval("MemberPrice", "{0}") == "1") ? true:false%>’或

                       Checked = ‘<%#Eval("MemberPrice").ToString()=="1"?true:false%>‘  

                        MemberPrice数据库字段

    也可以在后台绑定(推荐)

    页面需要绑定,不加判断。操作麻烦,但是便于更改和维护GridView的RowDataBound事件

    e.Row.RowType == DataControlRowType.DataRow //判断是否为数据行否则读取标题行会报错

     Text='<%# Eval("MemberPrice")%>' />
    
    protected void gvShow_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            CheckBox cbMemberPrice1 = (CheckBox)e.Row.FindControl("cbMemberPrice1");
            cbMemberPrice1.Checked = cbMemberPrice1.Text == "1" ? true : false;
            cbMemberPrice1.Text = string.Empty;
        }
    }

    完成效果开头图像所示:成功捆绑CheckBox状态

  • 相关阅读:
    apk反编译
    mysql 安装解读
    安卓=--确认
    安卓--界面--改变image view
    安卓--返回时,不丢失转态
    安卓--跳转
    安卓--菜单
    安卓--Toast
    设置网页上收藏夹的图标
    分帧标签
  • 原文地址:https://www.cnblogs.com/zxd543/p/3121169.html
Copyright © 2020-2023  润新知