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

Mat*_*hew 5 .net wpf xaml coding-style

我见过这两种形式:

风格#1

<TextBox
    Name="someTextBox"
    Width="50"
    Height="60" >
    Some Text
</TextBox>
Run Code Online (Sandbox Code Playgroud)

好处

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

缺点

  • 很难区分内容和属性.
  • 需要额外的一条线.

风格#2

<TextBox Name="someTextBox"
         Height="60"
         Width="50" >
    Some Text
</TextBox>
Run Code Online (Sandbox Code Playgroud)

好处

  • 易于区分内容和属性
  • 保存一行文字

缺点

  • 树中同一级别的不同元素可以具有不同的属性缩进级别.
  • 缩进级别可以变得非常高.

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

svi*_*ick 3

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

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

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

<TextBox Name="someTextBox"
         Width="50" Height="60">
    Some Text
</TextBox>
Run Code Online (Sandbox Code Playgroud)

我不认为高缩进级别本身有问题(它们在正常编程中,但那是另一回事)。