C# 将其他控件作为属性的用户控件
在我的asp.net 4.0应用程序中,我在整个应用程序中有一组标准的选项卡控件,其中一个用于搜索,一个用于查看,一个用于报告。我正在更新这些选项卡,我希望能够将它们的功能打包到一个用户控件中,因为它们的功能非常相似。我遇到的问题是如何创建一个名为SeacrhTab/ViewTab/ReportTab的属性,该属性允许我根据应用程序的区域为其分配不同的用户控件,例如CompanySearchControl、ContactSearchControl等。是否有人尝试过类似的操作?我应该如何处理此问题?为特定布局、视图或选项卡定义(即:SearchTab、ViewTab等)创建枚举。将其指定为用户控件的属性,然后根据所需布局或功能使用该属性创建、隐藏和显示特定占位符或面板C# 将其他控件作为属性的用户控件,c#,asp.net,.net,vb.net,C#,Asp.net,.net,Vb.net,在我的asp.net 4.0应用程序中,我在整个应用程序中有一组标准的选项卡控件,其中一个用于搜索,一个用于查看,一个用于报告。我正在更新这些选项卡,我希望能够将它们的功能打包到一个用户控件中,因为它们的功能非常相似。我遇到的问题是如何创建一个名为SeacrhTab/ViewTab/ReportTab的属性,该属性允许我根据应用程序的区域为其分配不同的用户控件,例如CompanySearchControl、ContactSearchControl等。是否有人尝试过类似的操作?我应该如何处理此问题
public enum ControlLayoutEnum
{
SearchTab = 0,
ViewTab = 1,
ReportTab = 2
}
public class TabViewControl: System.Web.UI.UserControl
{
public ControlLayoutEnum ControlLayout { get; set; }
protected override OnInit(object sender)
{
// Create controls required or Hide/Show PlaceHolder or Panel etc
switch (this.ControlLayout)
{
case ControlLayoutEnum.SearchTab: // Create Search Layout
break;
}
}
您应该能够在代码隐藏页的分部类定义中创建常规属性。将其公开,并使其成为包含所有选项卡控件的泛型类的类型,并且应该对其进行设置 我没有为用户控件创建其他控件属性,但我确实使用了所有其他自定义类作为用户控件的属性,所以我不明白为什么它不起作用 假设CompanySearchControl和ContactSearchControl都继承自GenericSearchTabControlClass,例如:
public GenericSearchTabControlClass SearchTab {get;set;}
public GenericViewTabControlClass ViewTab {get;set;}
public GenericReportTabControlClass ReportTab {get;set;}
如果用户控件所需的类因应用程序所在区域的不同而不同,那么如何呈现用户控件呢?e、 g.我有一个用于CompanySearch的用户控件和一个用于ContactSearch的不同用户控件。谢谢。您可以根据枚举定义要初始化和呈现的usercontrol类