ComboBox 项目的自定义项目模板

Custom Item Template for ComboBox Items

我有以下 XAML 看起来就像我想要的那样。它基本上是一个带有复选框和一些文本的下拉菜单。

<ComboBox x:Name="comboBox">
  <ComboBoxItem><CheckBox>WeeHee</CheckBox></ComboBoxItem>
  <ComboBoxItem><CheckBox>BuuHuu</CheckBox></ComboBoxItem>
</ComboBox>

然后我了解到选项可以动态调整,所以我更改了标记并将组合框绑定到一个数组。这非常有效功能方面但现在我只得到选项的名称,而复选框消失了。

<ComboBox x:Name="comboBox" 
          ItemsSource="{x:Static local:MainWindow.AllKinds}">
</ComboBox>

所以我正在寻找一种方法来创建用于填充组合框的自定义项但仍然以便动态绑定数据。我假设 WPF/XAML 支持这样的功能,但我太无知了,不知道 google 有什么用。

所以我的请求是一个基本示例 关于 google 的用途的建议。 (对于除了我之外的每个人来说,这可能是显而易见的事情。)

因此,对于大多数提供来自 ItemSource 的内容的控件,有一个漂亮的内置功能,允许您指定每个项目应该如何 look/behave 等。因此您可以通过设置在 ComboBox 中指定每个项目你自己的 ItemTemplate。

由于 ComboBox 仅使用 ItemsControl 来列出其项目,因此您可以通过 ComboBox.ItemTemplate 使用它来制作您喜欢的项目,在这种情况下可能类似于(伪)。

<ComboBox>
  <ComboBox.ItemTemplate>
    <DataTemplate>
       <CheckBox>
    </DataTemplate>
  </ComboBox.ItemTemplate>
</ComboBox>

希望这对您有所帮助,它是一些非常方便的信息,可以帮助您了解何时开始在 wpf、silverlight、wp、win-rt 等之间自定义项目生成列表。干杯!