0

多くの要素があり、それらの間に異なるマージンがある水平StackPanelがある場合:

各要素に左マージンを与えるか、1つおきの要素に右マージンと左マージンを与える利点がありますか?そうすれば、1つの要素だけがそのマージンプロパティセットを取得します。

<StackPanel Orientation="Horizontal">
<TextBlock Name="textblock1" />
<TextBlock Name="textblock2" Margin="5,0,0,0" />
<TextBlock Name="textblock3" Margin="10,0,0,0" />
...
</StackPanel>

また

<StackPanel Orientation="Horizontal">
<TextBlock Name="textblock1" />
<TextBlock Name="textblock2" Margin="5,0,10,0" />
<TextBlock Name="textblock3" />
...
</StackPanel>

これに関するベストプラクティスがあるかどうか疑問に思っていました。

4

1 に答える 1

1

マージンがすべての要素で同じである場合は、次のスタイルでマージンを除外できます。

<StackPanel Orientation="Horizontal">
   <StackPanel.Resources>
      <Style TargetType="TextBlock>
         <Setter Property="Margin" Value="5,0,0,0" />
      </Style>
   </StackPanel.Resources>
   <TextBlock Name="textblock1" />
   <TextBlock Name="textblock2" />
   <TextBlock Name="textblock3" />
   ...
</StackPanel>

それ以外は何の違いもありません。

于 2012-08-06T21:34:56.617 に答える