我将xctk CheckComboBox放入ToolBar。我旁边有一个简单的ComboBox,这两个看起来不同。简单的ComboBox具有ToolBar.ComboBoxStyleKey(https://msdn.microsoft.com/en-us/library/system.windows.controls.toolbar.comboboxstylekey(v=vs.110).aspx)的样式。但它不适用于CheckComboBox。
从ComboBox派生我自己的CheckComboBox(然后具有相同的样式)或更改CheckComboBox的样式是否更简单?
如何更改外观以使CheckComboBox看起来像ComboBox?
在左边,有ComboBox,右边有一个CheckComboBox:
非常感谢任何帮助。谢谢你们,伙计们。
答案 0 :(得分:0)
您可以使用ItemTemplate轻松创建checkboxcombo。请参阅下面的代码。
<Grid>
<StackPanel>
<ComboBox x:Name="cbo">
<ComboBox.ItemTemplate>
<DataTemplate DataType="local:MyCombo">
<StackPanel Orientation="Horizontal">
<CheckBox IsChecked="{Binding IsChecked}"/>
<TextBlock Text="{Binding Name}"/>
</StackPanel>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</StackPanel>
</Grid>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
List<MyCombo> lst = new List<MyCombo>();
for (int i = 0; i < 10; i++)
{
lst.Add(new MyCombo() {IsChecked = true,Name = "Name"+i});
}
cbo.ItemsSource = lst;
}
}
public class MyCombo
{
public bool IsChecked { get; set; }
public string Name { get; set; }
}