次の方法で共有


FormErrorCollection クラス

現在のフォームの各エラーの FormError オブジェクトを含みます。

継承階層

System.Object
  Microsoft.Office.InfoPath.FormErrorCollection

名前空間:  Microsoft.Office.InfoPath
アセンブリ:  Microsoft.Office.InfoPath (Microsoft.Office.InfoPath.dll)

構文

'宣言
Public MustInherit Class FormErrorCollection _
    Implements IEnumerable
'使用
Dim instance As FormErrorCollection
public abstract class FormErrorCollection : IEnumerable

解説

FormErrorCollection オブジェクトは、関連付けられたフォームで発生したすべてのエラーを表す FormError オブジェクトのコレクションを含みます。エラーのコレクションには、入力規則エラー、システムが生成したエラー、およびユーザー定義 (カスタム) エラーが含まれます。FormErrorCollection クラスには、含んでいる FormError オブジェクトの追加、削除、およびアクセス獲得のためのプロパティとメソッドが用意されています。入力規則エラーまたはシステムが生成したエラーは、このコレクションから削除できません。

FormErrorCollection クラスを使用すると、InfoPath が生成したエラーを管理できる以外に、Add メソッドでカスタム エラーを生成できます。

注意

カスタム エラーは、XmlValidatingEventArgs クラスの ReportError メソッドでも作成できます。

フォームに関連付けられた FormErrorCollection オブジェクトにアクセスするには、XmlForm クラスの Errors プロパティを使用します。

FormErrorCollection myErrors = this.Errors;
Dim myErrors As FormErrorCollection = Me.Errors

次の例では、まず、エラーを関連付けるフィールドに XPathNavigator オブジェクトを配置します。次に、XPathNavigator およびエラー メッセージの詳細を FormErrorCollection クラスの Add メソッドに渡し、フォームのエラー コレクションにエラーを追加します。

XPathNavigator root, txtbox;
// Create XPathNavigator for main data source.
root = this.MainDataSource.CreateNavigator();

// Create XPathNavigator positioned at field to associate with error.
txtbox = root.SelectSingleNode("//my:field1", this.NamespaceManager);

// Get form's collection of errors and add error.
this.Errors.Add(txtbox, "Field1Error", "Short error message.", 
   "Detailed error description.", 102057, ErrorMode.Modeless);
Dim root, txtbox As XPathNavigator
' Create XPathNavigator for main data source.
root = Me.MainDataSource.CreateNavigator()

' Create XPathNavigator positioned at field to add error.
txtbox = root.SelectSingleNode("//my:field1", Me.NamespaceManager)

' Get form's collection of errors and add error.
Me.Errors.Add(txtbox, "Field1Error", "Short error message.", 
   "Detailed error description.", 102057, ErrorMode.Modeless)

スレッドの安全性

この型の public static (Visual Basic ではShared ) メンバーはスレッド セーフです。インスタンス メンバーの場合は、スレッド セーフであるとは限りません。

関連項目

参照

FormErrorCollection メンバー

Microsoft.Office.InfoPath 名前空間