1

私は、ListBox開発中にアイテムをListBoxハードコーディングしてスタイルを設定したことがあります。アイテムはこのようにスタイリングされました。

<ComboBoxItem Width="Auto" Height="Auto" Content="ComboBoxItem" >
    <ComboBoxItem.Foreground>
        <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
            <GradientStop Color="#FF6F6F6F" Offset="0"/>
            <GradientStop Color="#FFD1D1D1" Offset="1"/>
        </LinearGradientBrush>
    </ComboBoxItem.Foreground>
</ComboBoxItem>

しかし、ItemsSourceプロパティをデータ オブジェクトに設定すると、xaml が無効であると表示されました。おそらく、XAML を介してアイテムを追加していたためです。

Style上記の XAML に記載されているように、データソースにバインドしたら、for each アイテムを作成するにはどうすればよいですか?

ありがとう。

4

1 に答える 1

1

スタイルを使用してこれを実現できます。

<ComboBox ItemsSource="{Binding}">
  <ComboBox.Resources>
    <Style TargetType="{x:Type ComboBoxItem}">
      <Setter Property="Foreground">
        <Setter.Value>
          <LinearGradientBrush EndPoint="0.5,1" StartPoint="0.5,0">
            <GradientStop Color="#FF6F6F6F" Offset="0"/>
            <GradientStop Color="#FFD1D1D1" Offset="1"/>
          </LinearGradientBrush>
        </Setter.Value>
      </Setter>
    </Style>
  </ComboBox.Resources>
</ComboBox>

お役に立てれば!

于 2008-12-28T01:11:33.167 に答える