在XAML中是否有可接受的缩进属性样式?

时间:2011-07-30 13:36:53

标签: .net wpf xaml coding-style

我见过这两种形式:

风格#1

<TextBox
    Name="someTextBox"
    Width="50"
    Height="60" >
    Some Text
</TextBox>

优点

  • 所有元素的一致缩进级别。您不会看到sibling1的属性缩进8个空格,而sibling2的属性缩进9个空格。
  • 最小缩进级别。长元素名称不会具有极其缩进的属性。

缺点

  • 难以区分内容与属性。
  • 需要额外的一行。

样式#2

<TextBox Name="someTextBox"
         Height="60"
         Width="50" >
    Some Text
</TextBox>

优点

  • 轻松区分内容与属性
  • 保存一行文字

缺点

  • 树中同一级别的不同元素可以为属性设置不同的缩进级别。
  • 缩进级别可能会非常高。

简而言之,两者都有效(并且两者都得到Visual Studio的支持)。我倾向于风格#1,但最重要的是我与其他开发人员保持一致。这些风格中的一种更常用吗?

2 个答案:

答案 0 :(得分:3)

我认为没有一种可接受的风格。

但由于XAML的结构与普通命令式代码的结构非常不同,我认为不同的方法可能会更好。

我更喜欢你甚至没有提到的风格:通常在一条线上都有所有属性。如果该行太长,请将其拆分,最好以有意义的方式拆分。所以,例如,像:

<TextBox Name="someTextBox"
         Width="50" Height="60">
    Some Text
</TextBox>

我认为高缩进级别本身并不成问题(它们在正常编程中,但那是其他的)。

答案 1 :(得分:1)

就我个人而言,我更喜欢将所有属性放在XAML的一行中,就在我编写HTML或XML时。我想这可能是因为我总是在Visual Studio中启用自动换行功能,并训练了我的眼睛来阅读它。

看看你提供的两种风格,实际上它们更难供我阅读。

如果我不得不选择,我会选择样式2以便于阅读。