1

wpf xaml スタイルの定義について質問があります。この方法でスタイルを設定しようとすると:

<StackPanel Orientation="Vertical">
      <StackPanel.Style>
          <Setter Property="BusinessModeler:GraphItemBehaviour.IsBroughtIntoViewWhenSelected" Value="True" />
      </StackPanel.Style>
</StackPanel>

メッセージで例外を発生させます - 'System.Windows.Setter' is not a valid value for property 'Style'

この定義を使用すると:

<Style x:Key="itemBehaviour" > 
    <Setter Property="BusinessModeler:GraphItemBehaviour.IsBroughtIntoViewWhenSelected" Value="True" />
</Style>
<StackPanel Orientation="Vertical" Style="{StaticResource itemBehaviour}">

すべて正常に動作します。

それで、違いは何ですか?

4

1 に答える 1

4

StackPanel.Styleは type のプロパティであるStyleため、 をラップせずに、プロパティをtype の何かに設定しようとしていSetterます。<Style></Style>StyleSetter

<StackPanel.Style>
    <Style>
        <Setter Property="BusinessModeler:GraphItemBehaviour.IsBroughtIntoViewWhenSelected" Value="True" />
    </Style>
</StackPanel.Style> 
于 2010-04-16T13:06:02.813 に答える