我有一个 ComboBox,我想用一些自定义样式对其进行样式设置。我成功地提供了所需的样式。在风格中,我有以下元素:
- 切换按钮的模板
- 包含 ComboBox 项目的弹出窗口
我提到的几乎所有链接都使用了相同的方法。但是使用这种方法,我无法为 ComboBox 中的项目提供模板。由于某种原因,我定义的项目模板没有用于渲染项目。有人可以帮我吗?我正在粘贴一个代码示例以使我的问题陈述清楚(代码中可能有错误,我只是想要一个想法继续进行)。
<Window.Resources>
<Style x:Key="{x:Type ComboBox}" TargetType="{x:Type ComboBox}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate>
<Grid>
<ToggleButton Template="{StaticResource MyToggleButton}"/>
<Popup >
<StackPanel>
<Border/>
<ItemsPresenter/>
</StackPanel>
</Popup>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</Window.Resources>
<Grid>
<ComboBox Style="{StaticResource MyStyle}">
<ComboBox.ItemTemplate>
<DataTemplate>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</Grid>