我有一个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中所述?
感谢。
答案 0 :(得分: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>
希望这有帮助!