我正在设置一个包含多个表单的Web应用程序。每个表单都在asp:FormView中定义,DataSource设置为ObjectDataSource。每个表单都包含它自己的字段集,并且始终包含一个或多个字段块,对于多个表单都是相同的。
因为这些块是相同的,所以我决定在自定义用户控件中定义它们。提出的问题是:
提前感谢您的回复。
答案 0 :(得分:1)
经过长时间的搜索后,我在此网站上发现了类似的问题:http://weblogs.asp.net/anasghanem/archive/2009/03/31/sharing-formview-edit-and-insert-templates-and-avoid-duplicate-markup.aspx。
简而言之,解决方案层次结构:
<asp:FormView ID="FormView1" runat="server" DefaultMode="Edit" DataSourceID="ObjectDataSource1">
<uc1:TestControl ID="TestControl1" runat="server" PhoneNumber='<%# Bind("PhoneNumber") %>' />
usercontrol的代码隐藏:
[Bindable(true)]
public partial class TestControl : System.Web.UI.UserControl
{
[Bindable(true), DefaultValue("")]
public string PhoneNumber
{
get
{
return this.PhoneTextBox.Text;
}
set
{
this.PhoneTextBox.Text = value;
}
}
}