如果我编写自定义WPF控件,我应该确保在XAML中设置属性的顺序不会影响控件的行为。例如:
<MyControl Prop1="Value" Prop2="Value" Prop3="Value" />
如果上面写的是XAML
<MyControl Prop3="Value" Prop2="Value" Prop1="Value" />
在两种情况下,用户是否应该期望控件的状态相同? 或者我要求订单重要吗?
答案 0 :(得分:2)
您不应强制开发人员遵循此类属性顺序。您不能要求开发人员记住正确的顺序来编写属性。
我,例如,使用一个自动命令属性的插件。
答案 1 :(得分:1)
订单无关紧要。该对象已创建&amp;在任何UI事件发生之前设置其属性。事实上,XML规范说没有定义属性顺序&amp;没有区别。
答案 2 :(得分:0)
对于标准XAML属性,顺序可以是任意的。但是,如果您创建自己的UserControl
,如果PropertyMetadata
中属性的逻辑依赖于某些参数属性,则顺序可能很重要。
我认为,创建一个Control的好习惯是不按某种顺序指定参数,因为它很难记住所有属性的顺序,因此对最终用户来说不方便。
对于依赖项属性,如果用户未指定此值,则使用默认值。应该设计控制,以便根本不能指定某些值,或者不能以正确的顺序指定。