【问题标题】:How to add a checkbox to a GridView and select/deselect based on a SQL table row value如何将复选框添加到 GridView 并根据 SQL 表行值选择/取消选择
【发布时间】:2015-08-17 20:37:35
【问题描述】:
<asp:GridView ShowHeaderWhenEmpty="false" ID="gvSubTasks" runat="server" AutoGenerateColumns="false" ClientIDMode="Static">
    <Columns>
        <asp:BoundField DataField="SN" HeaderText="SN" />
        <asp:BoundField DataField="ST" HeaderText="ST" />
        <%-- ADD ANOTHER COLUMN HERE WITH THE CHECKBOX --%>
    </Columns>
</asp:GridView>

代码隐藏:

string strST = @"SELECT 
            ,A345 'SN'
            ,M3w 'ST'
            ,A667 'CT' -- 0 for not complete and 1 for complete
        FROM [mydb].[dbo].[table1]";

public DataTable RT()
{
    using (SqlConnection con = new SqlConnection(gloString))
    {
        using (SqlCommand cmd = new SqlCommand())
        {
            cmd.CommandText = strST;

            using (SqlDataAdapter sda = new SqlDataAdapter())
            {
                cmd.Connection = con;
                sda.SelectCommand = cmd;

                using (DataSet ds = new DataSet())
                {
                    DataTable dt = new DataTable();
                    sda.Fill(dt);

                    return dt;
                }
            }
        }
    }
}

gvSubTasks.DataSource = RT();
gvSubTasks.DataBind();

如何在每行的gridview中添加一个复选框,标题为“完成”并基于CT,如果它是1,则预先选择复选框,如果它是@987654325,则不选择复选框@。

【问题讨论】:

    标签: c# html asp.net gridview datatable


    【解决方案1】:

    为带有复选框的列添加此项

    <asp:TemplateField HeaderText="Complete">
      <ItemTemplate>
      <asp:CheckBox ID="CheckBox1" runat="server" Checked='<%# Eval("CT").ToString() == "1" ? true : false %>' />
      </ItemTemplate>
     <ItemStyle HorizontalAlign="Center" />
    </asp:TemplateField>
    

    【讨论】:

      【解决方案2】:

      只需添加

        <asp:CheckBoxField DataField="CT" HeaderText="CT" </asp:CheckBoxField> 
      

      如果 CT 是 CHAR 值,您可以修改您的语句,如 CASE WHEN CT = '1' THEN 1 ELSE 0 END as CT

      【讨论】:

        猜你喜欢
        • 2015-12-07
        • 1970-01-01
        • 1970-01-01
        • 2014-03-24
        • 1970-01-01
        • 2019-01-03
        • 1970-01-01
        • 1970-01-01
        • 2017-05-20
        相关资源
        最近更新 更多