2011-03-29 46 views
5

嗨, 我想用设计.. GridView控件的标题文本改变从<TemplateField HeaderText="">GridView的头文本在asp.net

我创建代码中变量的后面是公开,并设置该值变量,然后我试图调用变量如下这里过来:

<TemplateField HeaderText = '<%= VariableCallHere %>' 

但运行页而我得到<%= VariableCallHere%>作为标题文本 甚至我尝试使用gridView1.HeaderRow.Cells[0].Text = "text Here"改变(这抛出对象引用错误)

任何一个有这到底是怎么实现的任何建议..

回答

8

应该gridview1.Columns[ColumnIndex].HeaderText = "Header text";

+3

我想要根据dataRows的逻辑来设置标题文本(在Header行之后),这除了'gridView1.HeaderRow.Cells [ColumnIndex] .Text'之外什么也没做。我不明白,但对其他任何与此有关的人都很有用。 – Coops 2014-06-13 11:23:32

0

通过列集合访问它:

gridview1.Columns[Index].HeaderText= "text Here"; 

如:

gridview1.Columns[0].HeaderText= "text Here"; 
0

为此,在Gridview控件的RowDataBound事件中,您需要 Ë像如下:

if (e.Row.RowType == DataControlRowType.Header) 
{ 
    e.Row.Cells[0].Text = "column 1"; 
    e.Row.Cells[1].Text = "column 2"; 
    ..... 
} 
0

我使用它像这样多语种它工作正常,无需额外的工作迭代行只是把它放在那里,让它做的工作

<asp:BoundField DataField="TITLE_NAME" HeaderText="<%$ Resources:Site,lblTitleName %>" 
          ItemStyle-Width="20%"> 
    <HeaderStyle HorizontalAlign="Left" /> 
</asp:BoundField>