我有一个几乎默认的WPF ComboBox:
例如,在combobox的输入和/或下拉列表中,对齐项的最简单方法是什么?
我环顾四周,发现只有解决方案混乱控制模板,在我看来,这是一个如此简单的事情太长的机会。我不敢相信,没有更简单的解决方案,我们可以做的对齐项目。
UPDATE:由于dkozl的回答,我稍微修改了这个问题,以涵盖更广泛的案例,读者可能会在这个主题上体验到更多的情况。
此外,它应该防止一些人试图结束这个问题作为一个重复。
发布于 2016-01-08 19:41:41
如果您想要正确地对齐所选的值和下拉项,那么针对ComboBox
设置HorizontalContentAlignment="Right"
就足够了。
<ComboBox ... HorizontalContentAlignment="Right">
如果要正确对齐,则只需下拉项,则需要更改ComboBoxItem
的HorizontalContentAlignment
<ComboBox>
<ComboBox.ItemContainerStyle>
<Style TargetType="{x:Type ComboBoxItem}">
<Setter Property="HorizontalContentAlignment" Value="Right"/>
</Style>
</ComboBox.ItemContainerStyle>
</ComboBox>
并正确地对齐仅选定的值组合
<ComboBox ... HorizontalContentAlignment="Right">
<ComboBox.ItemContainerStyle>
<Style TargetType="{x:Type ComboBoxItem}">
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
</Style>
</ComboBox.ItemContainerStyle>
</ComboBox>
发布于 2016-01-08 21:17:35
我从dkozl的答案中尝试了这两种方法,出于某种原因,将HorizontalContentAlignment
设置为我的ComboBox
就足以对齐两个组合框的输入中的正确项目。
https://stackoverflow.com/questions/34684757
复制相似问题