XAML - 日期選擇器



DatePicker 表示一個允許使用者選擇日期值的控制元件。使用者透過使用組合框選擇月份、日期和年份值來選擇日期。DatePicker 類的繼承層次結構如下:

DatePicker Hierarchy

屬性

序號 屬性及描述
1

CalendarIdentifier

獲取或設定要使用的日曆系統。

2

CalendarIdentifierProperty

獲取 CalendarIdentifier 依賴屬性的識別符號。

3

Date

獲取或設定當前在日期選擇器中設定的日期。

4

DateProperty

獲取 Date 依賴屬性的識別符號。

5

DayFormat

獲取或設定日期值的顯示格式。

6

DayFormatProperty

獲取 DayFormat 依賴屬性的識別符號。

7

DayVisible

獲取或設定一個值,該值指示是否顯示日期選擇器。

8

DayVisibleProperty

獲取 DayVisible 依賴屬性的識別符號。

9

Header

獲取或設定控制元件標題的內容。

10

HeaderProperty

標識 Header 依賴屬性。

11

HeaderTemplate

獲取或設定用於顯示控制元件標題內容的 DataTemplate。

12

HeaderTemplateProperty

標識 HeaderTemplate 依賴屬性。

13

MaxYear

獲取或設定可供選擇的最大公曆年份。

14

MaxYearProperty

獲取 MaxYear 依賴屬性的識別符號。

15

MinYear

獲取或設定可供選擇的最小公曆年份。

16

MinYearProperty

獲取 MinYear 依賴屬性的識別符號。

17

MonthFormat

獲取或設定月份值的顯示格式。

18

MonthFormatProperty

獲取 MonthFormat 依賴屬性的識別符號。

19

MonthVisible

獲取或設定一個值,該值指示是否顯示月份選擇器。

20

MonthVisibleProperty

獲取 MonthVisible 依賴屬性的識別符號。

21

Orientation

獲取或設定一個值,該值指示日期、月份和年份選擇器是水平堆疊還是垂直堆疊。

22

OrientationProperty

獲取 Orientation 依賴屬性的識別符號。

23

YearFormat

獲取或設定年份值的顯示格式。

24

YearFormatProperty

獲取 YearFormat 依賴屬性的識別符號。

25

YearVisible

獲取或設定一個值,該值指示是否顯示年份選擇器。

26

YearVisibleProperty

獲取 YearVisible 依賴屬性的識別符號。

事件

序號 事件及描述
1

DateChanged

當日期值更改時發生。

2

DragEnter

當輸入系統報告以該元素作為目標的基礎拖動事件時發生。(繼承自 UIElement)

3

DragLeave

當輸入系統報告以該元素作為源的基礎拖動事件時發生。(繼承自 UIElement)

4

DragOver

當輸入系統報告以該元素作為潛在放置目標的基礎拖動事件時發生。(繼承自 UIElement)

5

DragStarting

當啟動拖動操作時發生。(繼承自 UIElement)

6

GotFocus

當 UIElement 獲取焦點時發生。(繼承自 UIElement)

7

Holding

當在此元素的命中測試區域上發生未處理的 Hold 互動時發生。(繼承自 UIElement)

8

IsEnabledChanged

當 IsEnabled 屬性更改時發生。(繼承自 Control)

9

KeyDown

當 UIElement 具有焦點時按下鍵盤鍵時發生。(繼承自 UIElement)

10

KeyUp

當 UIElement 具有焦點時釋放鍵盤鍵時發生。(繼承自 UIElement)

11

LostFocus

當 UIElement 失去焦點時發生。(繼承自 UIElement)

方法

序號 方法及描述
1

ClearValue

清除依賴屬性的區域性值。(繼承自 DependencyObject)

2

FindName

檢索具有指定識別符號名稱的物件。(繼承自 FrameworkElement)

3

OnApplyTemplate

每當應用程式程式碼或內部程序(例如重建佈局傳遞)呼叫 ApplyTemplate 時呼叫。簡單來說,這意味著在 UI 元素在應用程式中顯示之前呼叫該方法。覆蓋此方法以影響類的預設模板後邏輯。(繼承自 FrameworkElement)

4

OnDragEnter

在 DragEnter 事件發生之前呼叫。(繼承自 Control)

5

OnDragLeave

在 DragLeave 事件發生之前呼叫。(繼承自 Control)

6

OnDragOver

在 DragOver 事件發生之前呼叫。(繼承自 Control)

7

OnDrop

在 Drop 事件發生之前呼叫。(繼承自 Control)

8

OnGotFocus

在 GotFocus 事件發生之前呼叫。(繼承自 Control)

9

OnKeyDown

在 KeyDown 事件發生之前呼叫。(繼承自 Control)

10

OnKeyUp

在 KeyUp 事件發生之前呼叫。(繼承自 Control)

11

OnLostFocus

在 LostFocus 事件發生之前呼叫。(繼承自 Control)

12

SetBinding

使用提供的繫結物件將繫結附加到 FrameworkElement。(繼承自 FrameworkElement)

示例

以下示例演示如何建立 DatePicker 控制元件。當您從 DatePicker 控制元件中點選任何日期時,程式將使用該日期更新標題。

以下是使用一些屬性和點選事件建立 DatePicker 的 XAML 程式碼。

<Window x:Class = "XAMLDatePicker.MainWindow" 
   xmlns = "http://schemas.microsoft.com/winfx/2006/xaml/presentation"
   xmlns:x = "http://schemas.microsoft.com/winfx/2006/xaml"
   Title = "MainWindow" Height = "350" Width = "604"> 
	
   <Grid> 
      <DatePicker HorizontalAlignment = "Center" 
         Margin = "10,10,0,0" VerticalAlignment = "Top"
         SelectedDateChanged = "DatePicker_SelectedDateChanged"/> 
   </Grid>
</Window>

以下是 **DatePicker_SelectedDateChanged 事件** 的 C# 實現。

using System; 
using System.Windows; 
System.Windows.Controls;

namespace XAMLDatePicker { 
   /// <summary> 
      /// Interaction logic for MainWindow.xaml 
   /// </summary> 
	
   public partial class MainWindow : Window { 
      public MainWindow() { 
         InitializeComponent(); 
      } 
      private void DatePicker_SelectedDateChanged(object sender, SelectionChangedEventArgs e) { 
         var picker = sender as DatePicker;
         DateTime? date = picker.SelectedDate;
				
         if (date == null) { 
            this.Title = "No date"; 
         } else {
            this.Title = date.Value.ToShortDateString(); 
         } 
      }
   }
}

編譯並執行上述程式碼後,將顯示以下輸出:

DatePicker Output

建議您執行上述示例程式碼並嘗試一些其他屬性和事件。

xaml_controls.htm
廣告

© . All rights reserved.