gridview 取 checkbox控件
前台如下:<asp:GridViewID="GridView1"runat="server"AutoGenerateColumns="False"GridLines="N...
前台如下:
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
GridLines="None" AllowPaging="True"
onpageindexchanged="GridView1_PageIndexChanged"
onpageindexchanging="GridView1_PageIndexChanging" Width="100%">
<RowStyle HorizontalAlign="Center" />
<Columns>
<asp:TemplateField HeaderText="选择">
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server">
</asp:CheckBox>
</ItemTemplate>
后台:
for (int i = 0; i < GridView1.Rows.Count; i++)
{
CheckBox cb = (CheckBox)GridView1.Rows[i].Cells[0].FindControl("CheckBox1");
if (cb.Checked == true)
运行后不管怎么点checkbox都是false
需要绑定?这个仅仅用来选择,就没有对应字段怎么绑定呢? 展开
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
GridLines="None" AllowPaging="True"
onpageindexchanged="GridView1_PageIndexChanged"
onpageindexchanging="GridView1_PageIndexChanging" Width="100%">
<RowStyle HorizontalAlign="Center" />
<Columns>
<asp:TemplateField HeaderText="选择">
<ItemTemplate>
<asp:CheckBox ID="CheckBox1" runat="server">
</asp:CheckBox>
</ItemTemplate>
后台:
for (int i = 0; i < GridView1.Rows.Count; i++)
{
CheckBox cb = (CheckBox)GridView1.Rows[i].Cells[0].FindControl("CheckBox1");
if (cb.Checked == true)
运行后不管怎么点checkbox都是false
需要绑定?这个仅仅用来选择,就没有对应字段怎么绑定呢? 展开
4个回答
展开全部
因为你在GridView1中的CheckBox没有绑定数据源,你需要绑定才能选中。
string sql="";
DataSet ds = new DataSet("ds");
ds.Clear();
ds.Tables.Add("vlab_nlzb");
ds.Tables["vlab_nlzb"].Columns.Add(new DataColumn("bh", typeof(Boolean)));
ds.Tables["vlab_nlzb"].Columns["bh"].DefaultValue = false;
SqlDataAdapter sda = new SqlDataAdapter(mysql, 链接conn自己写);
sda.Fill(ds, "vlab_nlzb");
this.dataGridView2.DataSource = ds.Tables["vlab_nlzb"];
if (ds.Tables["vlab_nlzb"].Rows.Count > 0)
{
Boolean.Parse((this.dataGridView2.CurrentRow.Cells["bh"] as DataGridViewCheckBoxCell).Value.ToString());
}
好好参考一下,希望你能明白。
string sql="";
DataSet ds = new DataSet("ds");
ds.Clear();
ds.Tables.Add("vlab_nlzb");
ds.Tables["vlab_nlzb"].Columns.Add(new DataColumn("bh", typeof(Boolean)));
ds.Tables["vlab_nlzb"].Columns["bh"].DefaultValue = false;
SqlDataAdapter sda = new SqlDataAdapter(mysql, 链接conn自己写);
sda.Fill(ds, "vlab_nlzb");
this.dataGridView2.DataSource = ds.Tables["vlab_nlzb"];
if (ds.Tables["vlab_nlzb"].Rows.Count > 0)
{
Boolean.Parse((this.dataGridView2.CurrentRow.Cells["bh"] as DataGridViewCheckBoxCell).Value.ToString());
}
好好参考一下,希望你能明白。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
添加事件了没?好好检查下,要有事件才行
仔细努力
调试下,确定 GridView1.Rows.Count不是零
如果是零的话是数据库连接没做好,看看连接填充代码
仔细努力
调试下,确定 GridView1.Rows.Count不是零
如果是零的话是数据库连接没做好,看看连接填充代码
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
是不是全选的<asp:CheckBox ID="CheckBox1" runat="server" AutoPostBack="True">
</asp:CheckBox>少了一个AutoPostBack属性
</asp:CheckBox>少了一个AutoPostBack属性
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
加的地方有问题吧,调试下看看!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询