与属性相关的设计时特性
所有的设计时特性都是针对 Visual studio 等IDE的
一 .分为3个层次
1.设置控件的特性
2.TypeConverters提供转换 PropertyBrowser中提供自定义表达式 TypeEditors减少设置复杂属性的步骤
3.使用自定义的Designer.
二.内容
1.Bindable 是否可以绑定一个有效的数据源 true/false
2.Browsable 是否在属性浏览器显示 true/false
3.Category 分组. 分为 Apperance Behavior Layout Data Action Key Mouse 还可以自定义
4.Description 浏览器下方的属性说明
5.DesignerSerialization Visiblity 是否可以在代码中序列化 .其值为DesignerSerializtionVisiblity的枚举:
DesignerSerializtionVisiblity.Hiden 不应该序列化
DesignerSerializtionVisiblity.Visible 可以序列化,为默认值
DesignerSerializtionVisiblity.Content 应序列化属性内容,而不是属性本身
6.NotifyParentProperty 当该属性的值被修改后通知父属性
以下用于复杂控件
7.ParseChildren 该XMl元素应该被视为属性还是子控件
第一种设置方法:
ParsChildren(true) 属性
ParsChildren(false) 子控件
第二种设置方法
ParsChildren(bool childrenasProperty,string defaultProperty)
其中 childerenanProperty和第一种相同;
defaultProperty 为集合属性.
8.PersistChildren
如何将该属性保存为该页面的元数据属性
设置方式为四种枚举
PersistenceMode(PersistenceMode.Attribute) 保持为特性
PersistenceMode(PersistenceMode.EncodedInnerDefaultProperty) 该属性为控件的唯一内部文本,而属性值是Html编码的,只能对字符串做这样的规定.
PersistenceMode(PersistenceMode.InnerDefaultProperty) 保持为内部文本,该属性定义为控件的默认属性,只能指定一个属性为默认属性
PersistenceMode(PersistenceMode.InnerProperty) 包此后为嵌套标记;通常用于复杂对象,他们具有自己的持久性属性
9.DefaultProperty 默认属性
10.TypeConverter 此属性的转换器 必须从TypeConverter继承.
转载请注明出处