カスタムスタイルでスタイリングしたい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>