DatePicker.MaxYear プロパティ
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
選択に使用できるグレゴリオ暦の最大年を取得または設定します。
public:
property DateTime MaxYear { DateTime get(); void set(DateTime value); };
DateTime MaxYear();
void MaxYear(DateTime value);
public System.DateTimeOffset MaxYear { get; set; }
var dateTime = datePicker.maxYear;
datePicker.maxYear = dateTime;
Public Property MaxYear As DateTimeOffset
プロパティ値
ピッキングに使用できるグレゴリオ暦の最大年。
例
この例では、コードで プロパティと MaxYear
プロパティをMinYear
設定する方法を示します。
<DatePicker x:Name="myDatePicker"/>
public MainPage()
{
this.InitializeComponent();
myDatePicker.MinYear = new DateTimeOffset(new DateTime(1950, 1, 1));
myDatePicker.MaxYear = DateTimeOffset.Now.AddYears(5);
}
注釈
MinYear プロパティとMaxYear
プロパティを設定して、ピッカーの日付値を制限できます。 既定では、MinYear
は現在の日付の 100 年前、MaxYear
は現在の日付の 100 年後に設定されています。
MinYear
または MaxYear
のどちらかのみを設定する場合、設定した日付と他方の既定値の日付によって有効な期間が作成されることを確認する必要があります。期間が正しくないと、ピッカー内で日付を選択できなくなります。 たとえば、yearDatePicker.MaxYear = new DateTimeOffset(new DateTime(900, 1, 1));
のみを設定すると、MinYear
には既定値が指定されているため、無効な期間が作成されます。
MaxYear
Windows ランタイム XAML パーサーには DateTime / DateTimeOffset オブジェクトとして文字列を日付に変換するための変換ロジックがないため、プロパティを XAML 属性文字列として設定することはできません。 これらのオブジェクトをコードで定義し、現在の日付以外の日付に設定できるいくつかの方法を次に説明します。
- DateTime: Windows.Globalization.Calendar オブジェクトをインスタンス化します (現在の日付に初期化されます)。 Year を設定するか AddYears を呼び出して、日付を調整します。 次に、 Calendar.GetDateTime を呼び出し、返された DateTime を 使用して MaxYear を設定します。
- DateTimeOffset: コンストラクターを呼び出します。 内部の System.DateTime の場合は、そのコンストラクター シグネチャを使用します。 または、既定の DateTimeOffset を構築し (現在の日付に初期化されます)、AddYears を呼び出します。
もう 1 つの考えられる手法は、データ オブジェクトまたはデータ コンテキストで使用できる日付を定義し、データとして日付にアクセスできる {Binding} マークアップ拡張 を参照する XAML 属性として MaxYear を設定することです。