PowerTools InputMan for Windows Forms 8.0J > InputManの使い方 > 検証コンポーネント > 日付検証コンポーネント |
日付検証コンポーネント(GcDateValidator)は、入力値の検証とその検証結果を表示する通知機能を日付コントロール(GcDate)に拡張するコンポーネントです。
本項では、日付検証コンポーネントに用意された検証アイテムの種類とその設定方法について解説します。なお、検証アイテムはデザイン画面からの設定も可能ですが、ここではコードによる設定方法を紹介しています。 デザイン画面での設定方法については「検証機能と設定方法」を参照してください。また、エラーの通知方法や不正値の処理の設定方法については「検証アクション」を参照してください。
GcDateValidator.CompareValue オブジェクト は、指定する日付値と値を比較検証します。
Imports GrapeCity.Win.Editors ' 検証アイテムを作成します。 Dim GcDateCompareValue1 As New GcDateValidator.CompareValue() ' 比較する値を設定します。 GcDateCompareValue1.ComparedValue = DateTime.Parse("2015/10/1") ' 比較方法を設定します。 GcDateCompareValue1.ComparedOperator = ComparedOperator.GreaterThan GcDateCompareValue1.DifferenceValue = TimeSpan.Parse("0:00:00") ' エラーメッセージを設定します。 GcDateCompareValue1.InvalidMessage = "2015/10/1より大きい値を入力してください。" ' GcDate1に作成した検証アイテムを設定します。 GcDateValidator1.GetValidateItems(GcDate1).AddRange(New Object() {GcDateCompareValue1})
using GrapeCity.Win.Editors; // 検証アイテムを作成します。 GcDateValidator.CompareValue gcDateCompareValue1 = new GcDateValidator.CompareValue(); // 比較する値を設定します。 gcDateCompareValue1.ComparedValue = DateTime.Parse("2015/10/1"); // 比較方法を設定します。 gcDateCompareValue1.ComparedOperator = ComparedOperator.GreaterThan; gcDateCompareValue1.DifferenceValue = TimeSpan.Parse("0:00:00"); // エラーメッセージを設定します。 gcDateTimeCompareValue1.InvalidMessage = "2015/10/1より大きい値を入力してください。"; // gcDate1に作成した検証アイテムを設定 gcDateValidator1.GetValidateItems(gcDate1).AddRange(new Object[] { gcDateCompareValue1 });
GcDateValidator.CompareControl オブジェクトは、対象となるコントロールの値と日付を比較検証します。
Imports GrapeCity.Win.Editors ' 検証アイテムを作成します。 Dim GcDateCompareControl1 As New GcDateValidator.CompareControl() ' 比較対象のコントロールを指定します。 GcDateCompareControl1.ComparedControl = GcDate2 ' 比較方法を設定します。 GcDateCompareControl1.ComparedOperator = ComparedOperator.GreaterThan GcDateCompareControl1.DifferenceValue = TimeSpan.Parse("0:00:00") ' エラーメッセージを設定します。 GcDateCompareControl1.InvalidMessage = "開始日で設定した日付より後の日付を入力してください。" ' GcDate1に作成した検証アイテムを設定します。 GcDateValidator1.GetValidateItems(GcDate1).AddRange(New Object() {GcDateCompareControl1})
using GrapeCity.Win.Editors; // 検証アイテムを作成します。 GcDateValidator.CompareControl gcDateCompareControl1 = new GcDateValidator.CompareControl(); // 比較対象のコントロールを指定します。 gcDateCompareControl1.ComparedControl = gcDate2; // 比較方法を設定します。 gcDateCompareControl1.ComparedOperator = ComparedOperator.GreaterThan; gcDateCompareControl1.DifferenceValue = TimeSpan.Parse("0:00:00"); // エラーメッセージを設定します。 gcDateTimeCompareControl1.InvalidMessage = "開始日で設定した日付より後の日付を入力してください。"; // gcDate1に作成した検証アイテムを設定します。 gcDateValidator1.GetValidateItems(gcDate1).AddRange(new object[] {gcDateCompareControl1});
GcDateValidator.InvalidRange オブジェクトは、入力された値が、指定した日付の範囲内の値かどうかを検証します。
日付範囲検証を行う場合、検証対象の日付コントロールは以下のいずれかの設定を行う必要があります。
日付コントロールのプロパティを使用して入力可能な日付範囲を設定する方法については、日付コントロールの「時刻部分の扱い」を参照してください。 |
Imports GrapeCity.Win.Editors ' 検証アイテムを作成します。 Dim GcDateInvalidRange1 As New GcDateValidator.InvalidRange() ' 2000/1/1 〜 2100/12/31 の範囲の日付を入力できます。 GcDateInvalidRange1.MaxValue = New DateTime("2100/12/31") GcDateInvalidRange1.MinValue = New DateTime("2000/1/1") ' エラーメッセージを設定します。 GcDateTimeInvalidRange1.InvalidMessage = "2000/1/1 〜 2100/12/31 の範囲の日付を入力できます。" ' GcDate1に作成した検証アイテムを設定します。 GcDateValidator1.GetValidateItems(GcDate1).AddRange(New Object() {GcDateInvalidRange1})
using GrapeCity.Win.Editors; // 検証アイテムを作成します。 GcDateValidator.InvalidRange gcDateInvalidRange1 = new GcDateValidator.InvalidRange(); // 2000/1/1 〜 2100/12/31 の範囲の日付を入力できます。 gcDateInvalidRange1.MaxValue = new DateTime("2100/12/31"); gcDateInvalidRange1.MinValue = new DateTime("2000/1/1"); // エラーメッセージを設定します。 gcDateInvalidRange1.InvalidMessage = "2000/1/1 〜 2100/12/31 の範囲の日付を入力できます。"; // gcDate1に作成した検証アイテムを設定します。 gcDateValidator1.GetValidateItems(gcDate1).AddRange(new object[] {gcDateInvalidRange1});
GcDateValidator.InvalidValue オブジェクトは、コントロールに入力された値が日付として有効かどうかを検証します。
Imports GrapeCity.Win.Editors ' 検証アイテムを作成します。 Dim GcDateInvalidValue1 As New GcDateValidator.InvalidValue() ' エラーメッセージを設定します。 GcDateInvalidValue1.InvalidMessage = "入力された値が不正です。" ' GcDateに作成した検証アイテムを設定します。 GcDateValidator1.GetValidateItems(GcDate1).AddRange(New Object() {GcDateInvalidValue1})
using GrapeCity.Win.Editors; // 検証アイテムを作成します。 GcDateValidator.InvalidValue gcDateInvalidValue1 = new GcDateValidator.InvalidValue(); // エラーメッセージを設定します。 gcDateInvalidValue1.InvalidMessage = "入力された値が不正です。"; // gcDate1に作成した検証アイテムを設定します。 gcDateValidator1.GetValidateItems(gcDate1).AddRange(new object[] {gcDateInvalidValue1});