我希望我的ComboBox
在多列中显示ComboBoxItem
,如下所示:
有人可以告诉我该怎么做吗?
我可以用这个:
<ComboBox.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid Columns="3"/>
</ItemsPanelTemplate>
</ComboBox.ItemsPanel>
但这不允许我指定要在何处结束一列。
有没有一种方法可以使
ComboBox
在Grid.Column
中使用ComboBoxItem
属性,以便可以在不同的列中添加ComboBoxItem
? 最佳答案
将ItemsPanelTemplate更改为WrapPanel。
<ComboBox>
<ComboBox.Resources>
<Style TargetType="ComboBox">
<Setter Property="ItemsPanel">
<Setter.Value>
<ItemsPanelTemplate>
<WrapPanel IsItemsHost="True" Orientation="Vertical" Width="100" Height="50" />
</ItemsPanelTemplate>
</Setter.Value>
</Setter>
</Style>
<Style TargetType="ComboBoxItem">
<Setter Property="Width" Value="50" />
</Style>
</ComboBox.Resources>
<ComboBoxItem Content="Item 1" />
<ComboBoxItem Content="Item 2" />
<ComboBoxItem Content="Item 3" />
<ComboBoxItem Content="Item 4" />
<ComboBoxItem Content="Item 5" />
<ComboBoxItem Content="Item 5" />
</ComboBox>
关于c# - 在多列中显示ComboBoxItems,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18211385/