c#使用数据集

时间:2016-07-13 11:15:09

标签: c# sql-server datagridview dataset selectall

这是一个基本问题,但我找不到合适的答案:我dataset显示dataGridview,其中包含Is_Alarmbit列}(布尔值),我想在该列中插入一个Select all复选框。

我见过很多解决方案,但它们都是关于在datagridView中插入一个新的复选框。 我想要的是在列显示后插入它,这是我的代码:

SqlDataAdapter adap= new SqlDataAdapter(select_query,con);
                ds = new DataSet();
                adap.Fill(ds, "Event_test");
                dataGridView1.DataSource = ds.Tables[0];

1 个答案:

答案 0 :(得分:0)

我有同样的问题我所做的可能对你有用

这是用于gridview的代码

<asp:GridView ID="GridView1" runat="server" EnableModelValidation="True">               
        <Columns>
            <asp:TemplateField>
                <EditItemTemplate>
                    <asp:CheckBox ID="CheckBox1" runat="server" />
                </EditItemTemplate>
                <ItemTemplate>
                    <asp:CheckBox ID="CheckBox1" runat="server" />
                </ItemTemplate>
            </asp:TemplateField>
        </Columns>
    </asp:GridView>

接下来我加载了数据(MyTable字段有id,用户名,电子邮件等)

protected void Page_Load(object sender, EventArgs e)
    {

        if (!IsPostBack)
        {
            con.Open();
            SqlDataAdapter adap = new SqlDataAdapter("Select * From UserInfo", con);
            DataSet ds = new DataSet();
            adap.Fill(ds);
            con.Close();             
            GridView1.DataSource = ds.Tables[0];
            GridView1.DataBind();
        }

    }

为了获取所选记录的ID,我使用了几行,这里描述 http://www.aspsnippets.com/Articles/GridView-with-CheckBox-Get-Selected-Rows-in-ASPNet.aspx并以这种方式修改

protected void btnCheckSelected_Click(object sender, EventArgs e)
    {

        foreach (GridViewRow row in GridView1.Rows)
        {
            if (row.RowType == DataControlRowType.DataRow)
            {
                CheckBox chkRow = (row.Cells[0].FindControl("CheckBox1") as CheckBox);
                if (chkRow.Checked)
                {
                    string ids = row.Cells[1].Text;

                    ListBox1.Items.Add(ids);
                }
            }
        }
    }