WPF - 自定义控件属性顺序是否重要?

时间:2014-04-15 12:57:44

标签: wpf

如果我编写自定义WPF控件,我应该确保在XAML中设置属性的顺序不会影响控件的行为。例如:

<MyControl Prop1="Value" Prop2="Value" Prop3="Value" />

如果上面写的是XAML

<MyControl Prop3="Value" Prop2="Value" Prop1="Value" />

在两种情况下,用户是否应该期望控件的状态相同? 或者我要求订单重要吗?

3 个答案:

答案 0 :(得分:2)

您不应强制开发人员遵循此类属性顺序。您不能要求开发人员记住正确的顺序来编写属性。

我,例如,使用一个自动命令属性的插件。

答案 1 :(得分:1)

订单无关紧要。该对象已创建&amp;在任何UI事件发生之前设置其属性。事实上,XML规范说没有定义属性顺序&amp;没有区别。

答案 2 :(得分:0)

对于标准XAML属性,顺序可以是任意的。但是,如果您创建自己的UserControl,如果PropertyMetadata中属性的逻辑依赖于某些参数属性,则顺序可能很重要。

我认为,创建一个Control的好习惯是不按某种顺序指定参数,因为它很难记住所有属性的顺序,因此对最终用户来说不方便。

对于依赖项属性,如果用户未指定此值,则使用默认值。应该设计控制,以便根本不能指定某些值,或者不能以正确的顺序指定。