2015-04-01 27 views
6

Tôi đang sử dụng một DatePicker trong ứng dụng của tôi định nghĩa như vậy:WPF: DatePicker văn bản làm trung tâm theo chiều dọc

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

Dưới đây là cách chọn ngày được hiển thị:

enter image description here

Làm thế nào tôi có thể nhận được ngày (4/22/2015) để căn giữa theo chiều dọc trong hộp văn bản (đường chấm chấm xung quanh ngày là ranh giới hộp văn bản thực tế)?

Tôi đã thử đặt cả hai VerticalContentAlignmentVerticalAlignment thành Center nhưng điều này không ảnh hưởng đến việc định tâm ngày.

Nếu tôi tìm hiểu công cụ chọn ngày bằng cách sử dụng Snoops, tôi có thể thấy phần tử được gọi là PART_TextBox trong số DatePicker. Nếu tôi thay đổi điều này PART_TextBoxVerticalContentAlignment thành Center, văn bản sẽ được căn giữa (được đặt thành Stretch theo mặc định). Tuy nhiên, tôi không biết cách truy cập vào tiểu hợp phần này để thay đổi đó là VerticalContentAlignment

+0

[http://stackoverflow.com/questions/1530640/centering-datepicker-control](http://stackoverflow.com/questions/1530640/centering-datepicker-control) Điều này có thể được xử lý bằng cách định nghĩa một phong cách. – EMAW2008

Trả lời

0

Tôi đoán đây là sản phẩm có kích thước phông chữ của bạn. Thử.

<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> 
Các vấn đề liên quan