WPF ComboBox:对齐选定的值和/或下拉项

Ale*_*mov 0 .net c# wpf combobox right-align

我有一个几乎默认的WPF ComboBox:

在此输入图像描述

例如,在组合框输入和/或下拉中将项目对齐的最简单方法是什么

我环顾四周,发现只有弄乱控制模板的解决方案,在我看来这对于这么简单的事情来说太长了.我无法相信我们可以做的更简单的解决方案来调整项目.

更新:我稍微重新阐述了这个问题,以涵盖更多读者可能会在这个主题上遇到的更广泛的案例,因为事实证明这要归功于dkozl的答案.

此外,它应该防止一些人试图将此问题作为副本关闭.

dko*_*ozl 7

如果你想右对齐都选择价值和下拉项目,然后设置HorizontalContentAlignment="Right"ComboBox应该足够

<ComboBox ... HorizontalContentAlignment="Right">
Run Code Online (Sandbox Code Playgroud)

如果你想右对齐只有下拉项,那么你需要改变HorizontalContentAlignmentComboBoxItem

<ComboBox>
    <ComboBox.ItemContainerStyle>
        <Style TargetType="{x:Type ComboBoxItem}">
            <Setter Property="HorizontalContentAlignment" Value="Right"/>
        </Style>
    </ComboBox.ItemContainerStyle>
</ComboBox>
Run Code Online (Sandbox Code Playgroud)

并且对齐两者的选定值组合

<ComboBox ... HorizontalContentAlignment="Right">
    <ComboBox.ItemContainerStyle>
        <Style TargetType="{x:Type ComboBoxItem}">
            <Setter Property="HorizontalContentAlignment" Value="Stretch"/>
        </Style>
    </ComboBox.ItemContainerStyle>
</ComboBox>
Run Code Online (Sandbox Code Playgroud)