2011-03-05 66 views
0

我有一個直放站對我的網頁之一,象這樣:ASP.NET ItemTemplate中的Container.DataItem

<asp:Repeater ID="rptrHalls" runat="server" OnItemCommand="Choose_Hall"> 
    <ItemTemplate> 
     <asp:Button ID="btn<% Container.DataItem %>" runat="server" 
     CommandName="<% Container.DataItem %>" Text="<% Container.DataItem %>" 
     /> 
    </ItemTemplate> 
</asp:Repeater> 

但是,當我運行它,它的錯誤了與消息:

「BTN <%Container.DataItem%>'不是有效的標識符。

我想將btn附加到Container.DataItem值,以便動態分配與基礎數據項關聯的控件名稱。有任何想法嗎?

回答

1

它應該是這樣的

<asp:Button ID='<%# "btn" + Container.DataItem %>' runat="server" 

,並取決於的Container.DataItem

的類型,但有你爲什麼要設置的ID,而不是使用這樣的理由嗎?

<asp:Button ID="btnSubmit" runat="server" 
+0

dataitem只是一個字符串。 – davemackey 2011-03-05 15:32:44

+0

我想我可以做到這一點...我只是覺得這將是很好的,讓每個人在DataItem中的值後專門命名,而不是一個通用的按鈕名稱。 – davemackey 2011-03-05 15:37:01

+0

啊好的。請記住,它仍然會在渲染時將類似於myRepeater $ ctl00的內容附加到ID上。 – 2011-03-05 16:15:26

相關問題