2012-03-09 46 views
0

我试图将字段更改为GridView内的复选框。将字段更改为GridView中的复选框

我目前基于查询和部分要更改为复选框的列来动态创建网格列,以便用户可以选中/取消选中它。我知道我不能通过使用.aspx页面做到这一点,但我试图远离静态创建字段。

任何帮助将是伟大的。

回答

0

利用GridView的RowDataBound事件。因此,您可以将任何控件添加到您的GridView。

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) 
     { 
      if (e.Row.RowType == DataControlRowType.DataRow) 
      { 
       CheckBox chk1 = new CheckBox(); 
       chk1.ID = "chkbox1"; 
       e.Row.Cells[0].Controls.Add(chk1); 
      } 
     } 

编辑的点评:

一旦从数据库中传递的值来GridView控件(超出范围了这个问题),您可以使用e.Row.Cells[i].Text其中“i”是行访问值。

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) 
     { 
      if (e.Row.RowType == DataControlRowType.DataRow) 
      { 
       TextBox txt1 = new TextBox(); 
       txt1.Text = e.Row.Cells[0].Text; 
       e.Row.Cells[0].Controls.Add(txt1); 
      } 
     } 
+0

嘿感谢张贴...我只是有一个问题你怎么现在更改字段这就是已经被界定? – 2012-03-09 20:22:46

+0

嗨,我没有得到你。你试过这个例子吗? – 2012-03-09 20:36:50

+0

是的,它创建了一个额外的列作为复选框。我想要的是采取一个现有的列,并将其转换为复选框。目前我所拥有的是当我将数据绑定到表中时,我的数据库字段都是位,因此GridView显示由网格生成的复选框,但由于它们是只读的,因此我无法访问它们。 – 2012-03-09 20:42:03

相关问题