XmlEvent.Validating イベント
フォームの基になっている XML ドキュメントに対する変更が受け付けられた後で、Changed イベントが発生する前に発生します。
名前空間: Microsoft.Office.InfoPath
アセンブリ: Microsoft.Office.InfoPath (microsoft.office.infopath.dll 内)
構文
'宣言
Public Event Validating As XmlValidatingEventHandler
'使用
Dim instance As XmlEvent
Dim handler As XmlValidatingEventHandler
AddHandler instance.Validating, handler
public abstract event XmlValidatingEventHandler Validating
例外処理
例外の種類 | 条件 |
---|---|
開発者は、InternalStartup メソッドとは異なる場所でイベントをバインドしようとしました。 |
|
InvalidOperationException |
開発者は、ノードまたはグループを指定している 1 つの XPath 式に対して、複数の代理を追加しようとしました。このイベントに対して追加できる代理は、ノードまたはグループに対する 1 つの XPath 式について 1 つだけです。 |
InvalidOperationException |
開発者は、セカンダリ データ ソースのノードにイベントをバインドしようとしました。このイベントは、セカンダリ データ ソースに対してはサポートされていません。 |
コメント
重要 : |
---|
Validating イベントは、フォーム コードで開発者がインスタンス化するためのものではありません。デザイン モードのユーザー インターフェイスからフォーム テンプレートにイベント ハンドラを追加すると、Microsoft Office InfoPath 2007 が EventManager クラスおよび XmlEvent クラスのメンバを使用してフォーム コード ファイルの InternalStartup メソッドにコードを生成し、ドキュメント レベルのイベントをイベント ハンドラにバインドします。 InfoPath のデザイン モードでイベント ハンドラを追加する方法の詳細については、「[方法] イベント ハンドラを追加する方法」を参照してください。 |
Validating イベントは、XmlValidatingEventHandler 代理を使用してバインドされます。
このイベント ハンドラでは、ユーザーが操作をキャンセルすることはできません。
Validate イベントの間に、フォームの基になっている XML ドキュメントは読み取り専用のモードに設定されます。
Validate イベントは、通常、新しいエラーの追加や既存のエラーの削除など、エラーの処理と FormErrorCollection コレクションの処理のために使用されます。
この型またはメンバは、Microsoft Office InfoPath 2007 または Web ブラウザで開いているフォームで実行されているコードからのみアクセスできます。
例
次の例では、変更が field9 に対して受け付けられた後、Validating イベントが発生し、field6 と関連付けられた FormError オブジェクトが、Add メソッドを使用してフォームの FormErrorCollection に追加されます。
これにより、エラー メッセージと field6 が関連付けられます。Add メソッドの message パラメータとして渡される文字列は、ユーザーが field6 をポイントするとヒントに表示されます。ユーザーが field6 を右クリックして [エラーの詳細情報] をクリックすると、Add メソッドの messageDetails パラメータとして渡される文字列を含む完全なエラー メッセージが表示されます。.
public void field9_Validating(object sender, XmlValidatingEventArgs e)
{
XPathNavigator errNode =
this.CreateNavigator().SelectSingleNode("/my:myFields/my:field6",
NamespaceManager);
this.Errors.Add(errNode, "Field9Validating",
"Field9 was validated.",
"Field9 was validated and an error was assocated with Field6.");
}
Public Sub field9_Validating(ByVal sender As Object, _
ByVal e As XmlValidatingEventArgs )
Dim errNode As XPathNavigator = _
Me.CreateNavigator().SelectSingleNode("/my:myFields/my:field6", _
NamespaceManager)
Me.Errors.Add(errNode, "Field9Validating", _
"Field9 was validated.", _
"Field9 was validated and an error was associated with Field6.")
End Sub