C# 如何向数据绑定的WPF组合框添加分隔符?

C# 如何向数据绑定的WPF组合框添加分隔符?,c#,wpf,binding,combobox,separator,C#,Wpf,Binding,Combobox,Separator,是否有任何方法可以将seperator添加到数据绑定的WPF组合框中?即在我的xaml中,组合框的ItemsSource=“{Binding TheList}”。该列表是一个可观察的对象集合,我希望将其中一个对象与其他对象分开。这个列表也是从sql生成的,所以它不是硬编码的。我也不希望seaprator是可选择的。谢谢 检查溶液。它使用样式来更改某些ComboBoxItem对象的模板您需要使用ComboBox.ItemTemplate来绘制iTen 虽然我的ComboxBox(目前)不是数据绑定

是否有任何方法可以将seperator添加到数据绑定的WPF组合框中?即在我的xaml中,组合框的ItemsSource=“{Binding TheList}”。该列表是一个可观察的对象集合,我希望将其中一个对象与其他对象分开。这个列表也是从sql生成的,所以它不是硬编码的。我也不希望seaprator是可选择的。谢谢

检查溶液。它使用
样式
来更改某些
ComboBoxItem
对象的
模板

您需要使用ComboBox.ItemTemplate来绘制iTen


虽然我的
ComboxBox
(目前)不是
数据绑定的
,但我通过向元素添加底部边框实现了分隔符的概念。在本例中,分隔符前两行和后两行

<ComboBox x:Name="Cbx" SelectionChanged="Cbx_SelectionChanged">
  <ComboBoxItem Content="select one..." Foreground="DarkGray" IsSelected="True" /
  <ComboBoxItem Content="ABC" />
  <ComboBoxItem Content="DEF" />
  <ComboBoxItem Content="GHI" BorderBrush="Black" BorderThickness="0,0,0,2" />
  <ComboBoxItem Content="KLM" />
  <ComboBoxItem Content="NOP" />
</ComboBox>


如果要在C代码中执行相同操作:


我在.cs文件中动态构建我的组合框,不使用绑定,但我相信它可以帮助您。无法单击并选择分隔符

ComboBox frameColor=新建ComboBox()
{
宽度=200,
余量=新厚度(180,-780,0,0),
垂直对齐=垂直对齐。中心,
IsEditable=false,
项目=
{
新建ComboBoxItem(){…},
新的分隔符(),
新建ComboBoxItem(){…},
新建ComboBoxItem(){…},
新建ComboBoxItem(){…},
新的分隔符(),
新建ComboBoxItem(){…},
新建ComboBoxItem(){…},
新建ComboBoxItem(){…},
新建ComboBoxItem(){…},
新建ComboBoxItem(){…},
}
这就是结果:

到目前为止,您尝试了什么来实现这一点?这与分离器无关。您是否可以更新链接,因为它不起作用?
Cbx.Items.Add("ABC");
Cbx.Items.Add("DEF");
ComboBoxItem item = new ComboBoxItem();
item.Content = "GHI";
item.BorderBrush = Brushes.Black;
item.BorderThickness = new Thickness(0, 0, 0, 2);
Cbx.Items.Add(item);
Cbx.Items.Add("KLM");
Cbx.Items.Add("NOP");