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