GcBalloonTipNotifyオブジェクトによる通知を複数コントロールに表示する方法

文書番号 : 85867     文書種別 : 使用方法     登録日 : 2020/08/05     最終更新日 : 2020/08/05
文書を印刷する
対象製品
InputMan for Windows Forms 10.0J
詳細
検証コンポーネントのGcBalloonTipNotifyオブジェクトを使用して、入力エラー時に複数コントロールに同時にバルーンチップによる通知を表示するためには、GcBalloonTipNotifyのインスタンスをコントロールごとに作成してそれぞれに設定する必要があります。

以下のように、デフォルトの検証アクション(GcBalloonTipNotifyのインスタンス1つ)を作成して複数コントロールに適用した場合は、最後に検証が行われたコントロールにのみバルーンチップが表示されるようになるため、注意が必要です。

[Visual Basic]
Imports GrapeCity.Win.Editors

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

    '' 以下のようにデフォルトの検証アクション(1つのインスタンス)を作成して
    '' 複数コントロールに適用した場合は、最後に検証が実行されたコントロールに
    '' のみバルーンチップが表示されます。

    '' デフォルトの検証アイテムの使用
    'GcCommonValidator1.DefaultValidateItems.AddRange(New Object() {New EmptyText()})
    'GcCommonValidator1.SetUseDefaultValidateItems(GcTextBox1, True)
    'GcCommonValidator1.SetUseDefaultValidateItems(GcTextBox2, True)

    '' デフォルトの検証アクションの使用
    'GcCommonValidator1.DefaultValidateActions.AddRange(New ValidateAction() {New GcBalloonTipNotify(), New IconNotify()})
    'GcCommonValidator1.SetUseDefaultValidateActions(GcTextBox1, True)
    'GcCommonValidator1.SetUseDefaultValidateActions(GcTextBox2, True)

    ' 以下のようにコントロールごとに検証アクションを作成してインスタンスを
    ' それぞれ作成することで、バルーンチップを複数コントロールに表示すること
    ' が可能です。

    ' コントロールごとに検証アイテムを設定
    GcCommonValidator1.GetValidateItems(GcTextBox1).AddRange(New Object() {New EmptyText()})
    GcCommonValidator1.GetValidateItems(GcTextBox2).AddRange(New Object() {New EmptyText()})

    ' コントロールごとに検証アクションを設定
    GcCommonValidator1.GetValidateActions(GcTextBox1).AddRange(New ValidateAction() {New GcBalloonTipNotify(), New IconNotify()})
    GcCommonValidator1.GetValidateActions(GcTextBox2).AddRange(New ValidateAction() {New GcBalloonTipNotify(), New IconNotify()})
End Sub

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    ' 検証のリセットと実行
    GcCommonValidator1.ResetValidationState()
    GcCommonValidator1.Validate()
End Sub
[C#]
using GrapeCity.Win.Editors;

private void Form1_Load(object sender, EventArgs e)
{
    // 以下のようにデフォルトの検証アクション(1つのインスタンス)を作成して
    // 複数コントロールに適用した場合は、最後に検証が実行されたコントロールに
    // のみバルーンチップが表示されます。

    //// デフォルトの検証アイテムの使用
    //gcCommonValidator1.DefaultValidateItems.AddRange(new Object[] { new EmptyText() });
    //gcCommonValidator1.SetUseDefaultValidateItems(gcTextBox1, true);
    //gcCommonValidator1.SetUseDefaultValidateItems(gcTextBox2, true);

    //// デフォルトの検証アクションの使用
    //gcCommonValidator1.DefaultValidateActions.AddRange(new ValidateAction[] { new GcBalloonTipNotify(), new IconNotify() });
    //gcCommonValidator1.SetUseDefaultValidateActions(gcTextBox1, true);
    //gcCommonValidator1.SetUseDefaultValidateActions(gcTextBox2, true);

    // 以下のようにコントロールごとに検証アクションを作成してインスタンスを
    // それぞれ作成することで、バルーンチップを複数コントロールに表示すること
    // が可能です。

    // コントロールごとに検証アイテムを設定
    gcCommonValidator1.GetValidateItems(gcTextBox1).AddRange(new object[] { new EmptyText() });
    gcCommonValidator1.GetValidateItems(gcTextBox2).AddRange(new object[] { new EmptyText() });

    // コントロールごとに検証アクションを設定
    gcCommonValidator1.GetValidateActions(gcTextBox1).AddRange(new ValidateAction[] { new GcBalloonTipNotify(), new IconNotify() });
    gcCommonValidator1.GetValidateActions(gcTextBox2).AddRange(new ValidateAction[] { new GcBalloonTipNotify(), new IconNotify() });
}

private void button1_Click(object sender, EventArgs e)
{
    // 検証のリセットと実行
    gcCommonValidator1.ResetValidationState();
    gcCommonValidator1.Validate();
}