2-wayデータバインディングでは私だけか、それとも重要なリソースが不足していますか?双方向バインディングをサポートするITemplateフィールドを持つDataBound UserControlを作成する(<%# Bind() %>)
私の問題は、FormView.InsertItemTemplate内に配置するUserControlを作成したことです。
私の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を宣言しました2回
これはなぜですか?もっと重要なのは、これを修正するか、これを回避するには?事前 で
おかげNandun
本当ですが、問題は私が<%# Bind() %>を使用することです。 2ウェイ・バインディングを使用する場合は、IDが必要です。それ以外の場合はエラーになります。 – Nandun