2014-04-07 68 views
0

我想從後面的代碼作爲數組訪問我的所有模板字段值。如何獲取gridview中的templatefield值作爲數組

<asp:TemplateField HeaderText="S.No" meta:resourcekey="TemplateFieldResource1"> 
    <ItemTemplate> 
     <asp:Label ID="Label1" runat="server" Text="<%# (Container.DataItemIndex + 1) %>"></asp:Label> 
    </ItemTemplate> 
    <ItemStyle Width="50px" /> 
</asp:TemplateField> 

我想綁定默認文本與來自下面的值。

protected void grdOffice_RowDataBound(object sender, GridViewRowEventArgs e) 
{ 
    if(e.Row.RowType == DataControlRowType.DataRow) 
    { 
     Label l = (Label)e.Row.FindControl("Label1"); 
     //get list of number array from label1 
     //and replace each number with another value 
    } 
} 
+0

我不太清楚你在做什麼... Label控件的Text屬性是字符串而不是數組。你的問題很混亂 – Leo

+0

我想得到我的網格的S.No. templatefield 1,2,3 ..以數組形式表示爲{「1」,「2」,「3」..}並將它們替換爲其他值。 – user3488717

回答

0

我不知道你想實現什麼,但如果你想在一個數組你S.Noβ-細胞的值,你可以嘗試利用DataBound事件您GridView

protected void gv_DataBound (object sender, EventArgs e) 
{ 
    string[] ids = this.gv.Rows 
     .OfType<GridViewRow>() 
     .Where (r => r.RowType == DataControlRowType.DataRow) 
     .Select (r => ((Label)r.FindControl ("Label1")).Text) 
     .ToArray(); 
} 

請注意,你不改變你的標籤的文本,如果數組中改變這些值。

相關問題