2009-10-22 29 views
0

我有一个gridview.Datasource = someDatatableGridView控件显示4,满分10列具有自定义标题

我想显示出5 10列以姓为“名”

是否有一个快速的方法做到这一点,而不是我们使用itembound功能?

另一件事是..我把一些asp:绑定的领域,但然后数据源领域仍然增加我的数据绑定领域。

有什么建议吗?

+0

感谢您的财产和您的答复。我想在行的前面添加一个复选框。或我自己的控制。 不会允许我这样做。总之,我需要混合绑定字段和自定义复选框或其他控件。这种组合是可能的吗? – LibraRocks 2009-10-22 14:51:39

+0

是的 - 您可以使用TemplateField为每一行添加一个复选框。 – 2009-10-22 15:28:40

+0

感谢它的工作。 – LibraRocks 2009-10-22 16:11:51

回答

1

的另一件事是..我把一些 ASP:绑定字段但随后 数据源字段仍处于进来 addittion我的数据绑定领域。

可定属性

<asp:GridView AutoGenerateColumns="false"></asp:GridView> 

而且要表现为数据绑定字段组列后。

+0

我错过了这个问题的答案。 + 1给出“答案的其余部分”。 – David 2009-10-22 14:33:54

+0

感谢您的财产和您的答复。 我想在行的前面添加一个复选框。或我自己的控制。 不会允许我这样做。 总之,我需要混合绑定字段和自定义复选框或其他控件。 这种组合可能吗? – LibraRocks 2009-10-22 14:48:05

+0

你可以试试: 的 <点击率:MyCtr ID = “ctrId” RUNAT = “服务器”/> ,然后在 空隙grd_RowDataBound (对象发件人,GridViewRowEventArgs e) if((e.RowTypeRowType == DataControlRowType.DataRow)&&(e.Row.RowIndex> -1)) {MyCtr ctr =(MyCtr)e.Row.Fin dControl( “ctrId”); TextBox tb =(TextBox)e.Row.FindControl(“tb”); } } – Kate 2009-10-23 11:48:58

0

一种方法是使用TemplateColumns代替BoundColumns

另一个办法是做在的DataBind()被调用代码隐藏后。

... 
myGridView.DataBind(); 
myGridview.Columns[0].Visible = false; 
myGridView.Columns[1].HeaderText = "First Name"; 

就我个人而言,我喜欢TemplateColumn方法。我几乎从来没有做过拖放设计人员给我的东西,但至少在某些方面做了修改。

编辑 - 添加

我错过了在列自动添加问题的一部分。正如其他人所回答的,这可以通过在GridView上设置AutoGenerateColumns = false来解决。

2

首先解决这个问题:我放了一些asp:绑定的字段,但数据源字段仍然添加到我的数据绑定字段。您需要设置:

AutoGenerateColumns = False 

然后,如果你使用绑定列,您可以设置的HeaderText为每列是你喜欢的。

+0

+1。准确地回答了问题的两个部分。 – David 2009-10-22 14:35:47

相关问题