2

我有一个收集用户联系信息的在线表格。典型的东西——名字和姓氏、地址、城市、州、邮编等。

在此过程中的某一时刻,他们也可以为另一个人输入信息。那时,我会显示一个模式弹出窗口,其中包含与此人完全相同的字段。

我讨厌我的 ASCX 文件中字段的重复。我想定义一个字段块并在不同的上下文中显示它们。

情节的一个转折是站点的管理员可以配置两个上下文中的每一个都可以看到哪些字段。

例如,他们可能会为主要用户说,我们想询问电话号码,但我们不想为其他人显示该字段。在这种情况下,电话号码字段对主表单可见,但隐藏在模式弹出窗口中。

所以问题是:在 ASP.NET 表单的不同位置重用相同字段的最佳方法是什么?

4

2 回答 2

0

您可以向用户控件添加另一个标志

注意:此标志必须声明为公共财产

public bool Flag 
{
  get;
  set;
}

您的用户控制

第一个例子 :<UCTagPrefix:UCTagName runat="server" id="" Flag="true"/>

二审:<UCTagPrefix:UCTagName runat="server" id="" Flag="false"/>

如果需要,您可以使用其他类型,此示例基于布尔值

在您的代码中使用您的标志值调整您的用户控件的行为

于 2013-03-19T14:14:08.697 回答
0

如果管理员想要配置每个字段的可见性,我认为最好将字段列表添加到数据库表中fieldName, userType1 (bit), userType2 (bit),...,然后添加值0 or 1(管理员可以通过界面执行此操作)。

当您加载控件时,通过将 userType 传递给数据库(存储过程或查询)并相应地设置每个字段的可见性来获取相应的值。

于 2013-03-19T14:21:11.253 回答