0
僅僅是我還是在雙向數據綁定中存在嚴重的材料短缺?使用支持雙向綁定的ITemplate字段創建DataBound UserControl,即<%# Bind() %>
無論如何,我的問題是,我創建了一個UserControl被放置在一個FormView.InsertItemTemplate中。
我的UserControl本身有一個ITemplate字段。基本上這個想法是,在我的表單中,我有5個控件,這些控件對所有窗體都是通用的,還有另一個可以根據窗體進行自定義的控件。
我的標記看起來是這樣的:
<irt:FormView ID="FormViewInsertEvent" DefaultMode="Insert" runat="server"
DataKeyNames="EVENT_ID" DataSourceID="DataSourceEvents">
<InsertItemTemplate>
<irt:EventControl ID="EventControlInsertEvent" runat="server" DataSourceID="DataSourceDataModemEvents"
EventDate='<%# Bind("EVENT_DATE") %>'
EventTypes='<%# Bind("EVENT_TYPE") %>'>
<CustomContent>
Additional Property:
<asp:TextBox ID="AdditionalTextBox" runat="server" Text='<%# Bind("ADDITIONAL_PROPERTY") %>' />
</CustomContent>
</irt:EventControl>
</InsertItemTemplate>
</irt:FormView>
我覺得理論上一切是正確的。但我得到一個ASP.NET運行時編譯錯誤@line 4637:
Compiler Error Message: CS0128: A local variable named 'AdditionalTextBox' is already defined in this scope
Source Error:
Line 4635: #line default
Line 4636: #line hidden
Line 4637: System.Web.UI.WebControls.TextBox AdditionalTextBox;
Line 4638:
Line 4639: #line 378 "C:\MyProj\trunk\Releases\Source\FilePathSensored.aspx"
這行代碼是這樣的:
Line 4620: [System.Diagnostics.DebuggerNonUserCodeAttribute()]
Line 4621: public System.Collections.Specialized.IOrderedDictionary @__ExtractValues__control84(System.Web.UI.Control @__container) {
...
Line 4628: #line default
Line 4629: #line hidden
Line 4630: System.Web.UI.WebControls.TextBox AdditionalTextBox;
Line 4631:
Line 4632: #line 378 "C:\MyProj\trunk\Releases\Source\FilePathSensored.aspx"
Line 4633: AdditionalTextBox = ((System.Web.UI.WebControls.TextBox)(@__container.FindControl("AdditionalTextBox")));
Line 4634:
Line 4635: #line default
Line 4636: #line hidden
Line 4637: System.Web.UI.WebControls.TextBox AdditionalTextBox;
Line 4638:
Line 4639: #line 378 "C:\MyProj\trunk\Releases\Source\FilePathSensored.aspx"
Line 4640: AdditionalTextBox = ((System.Web.UI.WebControls.TextBox)(@__container.FindControl("AdditionalTextBox")));
Line 4641:
正如你所看到的,對於我的aspx生成的代碼AdditionalTextBox聲明兩次
有誰知道這是爲什麼?更重要的是,我如何解決這個問題或者解決這個問題?
在此先感謝 Nandun
是的,但問題是我必須使用<%# Bind() %>。當您使用2路綁定時,該ID是必需的。否則會導致錯誤。 – Nandun