2015-11-05 55 views
0

我正在調試一些包含.aspx文件和c#文件的舊代碼,以用於後面的代碼。我在計算如何將'HeaderText'中的文本綁定爲TemplateField時遇到了一些麻煩。 (注意:以前從未使用過aspx)。基本上,我在代碼隱藏中有一個字符串數組,在.aspx文件中有幾個不同的TemplateField。我想將這些字段的HeaderText綁定到字符串。我知道文本框這將是將HeaderText綁定到後面代碼中的字符串

Text = '<%# bindingStuffHere %> 

舉個例子,說我有一個模板字段象下面這樣:

<asp:TemplateField HeaderText="" > 

而且在後面的代碼我有:

String[] days = new String[5] 
days[0] = "SAT" 

我希望將「SAT」綁定到HeaderText。該模板位於GridView中。

+0

'TemplateField'裏面有什麼'GridView','ListView'或哪個控件?顯示小而完整的代碼。 –

+0

GridView。除了我發佈的內容外,我不確定是否可以發佈小代碼。它有數千行長,並且有很多錯誤。編寫它的人硬編碼了很多東西,所以我正試着去解決一些問題。 – pfinferno

回答

2

你不能在asp:TemplateField中綁定HeaderText。相反,您可以實現OnRowDataBound事件並在那裏更改標題文本。

protected void gridview_RowDataBound(object sender, GridViewRowEventArgs e) 
{ 
    if (e.Row.RowType == DataControlRowType.Header) 
    { 
     for (int i = 0; i < e.Row.Cells.Count; i++) 
     { 
      e.Row.Cells[i].Text = days[i]; 
     } 
    } 
} 
+0

現在這是正確的,所以+1 :) –

+0

啊我明白了。謝謝,我現在就玩這個! – pfinferno

+0

很高興我能幫到你。只要記住標記爲答案,如果這可以解決您的問題。 –

相關問題