是我一个人还是2路数据绑定的材料严重短缺?
无论如何,我的问题是,我创建了一个要放置在 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 两次
有人知道为什么吗?更重要的是,我该如何解决这个问题或解决这个问题?
在此先感谢南顿