在WPF中,可以通过属性或内部属性设置自定义控件的属性。像这样:
<custom:UserControl1 Text="My text here..."></custom:UserControl1>
等于:
<custom:UserControl1>
<custom:UserControl1.Text>
My text here...
</custom:UserControl1.Text>
</custom:UserControl1>
在ASP.net中,可以通过PersistenceMode属性定义自定义控件属性的类型。目前,我只能找到一种方法来将属性定义为属性或内部属性。
是否有可能以任何方式设置自定义控件属性,如WPF?
谢谢!
答案 0 :(得分:0)
对于文字,请设置:
[
PersistenceMode(PersistenceMode.InnerProperty),
DesignerSerializationVisibility(DesignerSerializationVisibility.Content)
]
public string Text
对于您希望以此方式显示的属性,您可以执行第二个选项;但是,您也可以将其指定为内联。如果这是您用作子元素的唯一属性,则还可以指定PersistenceMode.InnerDefaultProperty或EncodedInnerDefaultProperty(因为它将是默认值),后者将对其进行编码。
实际上,你不能像在ASP.NET中的WPF那样做所有事情;它不是完全支持设计师,因为这不是它的意图。但是,您可以将原始类型定义为具有内容设计序列化的内部属性,并且它应该允许您同时执行这两个选项。
HTH。