ICommonDynamicVisible 接口

定义

ICommonDynamicVisible 接口应由任何想要根据该类的状态限制某些枚举值的可见性的类来实现。

如果类包含一个公开枚举的属性,该类实现 ICommonDynamicVisible 接口,则将针对属于枚举类型的每个属性调用该接口。

上下文参数可用于确定调用此方法的枚举。 如果某个类只有一个枚举,则不需要进行此检查。

限制某些项可见性的方法只是从 ArrayList 中删除不需要的枚举值。 此方法在枚举的每个下拉列表中调用,因此可以更改每个下拉列表中的列表。 如果列表在最初确定缓存 ArrayList 并返回数组列表后不会更改,这将很有帮助。

应注意确保不要删除枚举属性已设置为的值。 这不会造成任何错误,因为所有枚举值仍然有效,但当用户单击下拉列表时,他们不会将当前选项视为选项。

此外,不应将新值添加到列表中,因为这些值将无法转换为有效的枚举值,并且将在运行时引发错误。 如果需要更多动态控件,请考虑使用 DynamicValues 设计。

public interface ICommonDynamicVisible
type ICommonDynamicVisible = interface
Public Interface ICommonDynamicVisible

方法

名称 说明
ConfigureVisibleEnumFields(ITypeDescriptorContext, ArrayList)

从值列表中删除项并返回新列表将控制上下文中指定的枚举中显示的值。

如果(上下文),则可以使用类似于以下内容的代码确定枚举。PropertyDescriptor.PropertyType == typeof(myEnum))

适用于