WPF:DatePicker文本垂直居中

时间:2015-04-01 16:16:52

标签: wpf xaml textbox datepicker

我在我的应用程序中使用DatePicker定义如下:

<DatePicker Width="200"
            Margin="20, 20, 20, 0"
            SelectedDate="{Binding PeriodEndDate, Mode=TwoWay}" />

以下是日期选择器的显示方式:

enter image description here

如何让日期(2015年4月22日)在文本框中垂直居中(日期周围的虚线是实际的文本框边界)?

我已尝试将VerticalContentAlignmentVerticalAlignment设置为Center,但这不会影响日期居中。

如果我使用Snoops挖掘日期选择器,我可以在PART_TextBox中看到一个名为DatePicker的元素。如果我将此PART_TextBox VerticalContentAlignment更改为Center,则文本将居中(默认设置为Stretch)。但是,我不知道如何访问此子组件以更改它的VerticalContentAlignment

1 个答案:

答案 0 :(得分:0)

我猜这是你的字体大小的乘积。尝试。

<DatePicker Width="200"
            FontSize="8"
            Margin="20, 20, 20, 0"
            SelectedDate="{Binding PeriodEndDate, Mode=TwoWay}" >

    <DatePicker.Resources>
        <Style TargetType="DatePickerTextBox">
            <Setter Property="VerticalAlignment" Value="Center" />
        </Style>
    </DatePicker.Resources>

</DatePicker>