用户控制中的条件
本文关键字:条件 控制 用户 | 更新日期: 2023-09-27 18:37:16
假设我有一个带有下拉列表/文本框/网格视图等的用户控件。所有这些都由一个(或多个参数)控制
假设我正在将我的用户控件添加到页面并设置如下内容:
userControl1.Type = Advanced;
或
userControl1.Type = Regular;
然后在我的多个地方的用户控件中,我有类似的东西:
if Type ==Advanced
gridview.DataSource=dataTableAdvanced;
else if Type==Regular
gridview.DataSource = dataTableRegular;
或类似的东西:
if Type==Advanced
dropdown1.Visible=true
else
dropdown1.Visible=false
如果我有参数,控制很快就会变得混乱,假设有五个不同的值可用。有没有更好的技术来做到这一点?
高级控件可以从常规控件派生,并重写设置依赖对象的方法。
class RegularControl
{
public virtual void SetStuff() { //visible, data source, etc }
}
class AdvancedControl: RegularControl
{
public override void SetStuff() { // same deal }
}
听起来你真的应该有 2 个控件,一个高级控件和一个常规控件。