XMLNode.SetValidationError メソッド (2007 System)
更新 : 2007 年 11 月
XMLNode コントロールに関して、ユーザーに表示する検証エラーのテキストを変更し、強制的に Microsoft Office Word にノードを無効として報告させます。
名前空間 : Microsoft.Office.Tools.Word
アセンブリ : Microsoft.Office.Tools.Word.v9.0 (Microsoft.Office.Tools.Word.v9.0.dll 内)
構文
'宣言
Public Sub SetValidationError ( _
Status As WdXMLValidationStatus, _
ByRef ErrorText As Object, _
ClearedAutomatically As Boolean _
)
'使用
Dim instance As XMLNode
Dim Status As WdXMLValidationStatus
Dim ErrorText As Object
Dim ClearedAutomatically As Boolean
instance.SetValidationError(Status, ErrorText, _
ClearedAutomatically)
public void SetValidationError(
WdXMLValidationStatus Status,
ref Object ErrorText,
bool ClearedAutomatically
)
パラメータ
Status
型 : Microsoft.Office.Interop.Word.WdXMLValidationStatus検証ステータスのエラー テキストを設定するか消去するかを指定する、いずれかの WdXMLValidationStatus の値。設定する場合は wdXMLValidationStatusCustom、消去する場合は wdXMLValidationStatusOK。
ErrorText
型 : System.Object%ユーザーに表示されるメッセージ。Status パラメータに wdXMLValidationStatusOK が設定されている場合は空白のままです。
ClearedAutomatically
型 : System.Boolean指定されたノードで、次の検証イベントが発生するとすぐにエラー メッセージが自動的に消去される場合は true。wdXMLValidationStatusOK の Status パラメータを指定して SetValidationError メソッドを実行しなければ、カスタムのエラー テキストが消去されない場合は false。
解説
カスタムのエラー テキストを設定するには、wdXMLValidationStatusCustom 定数を使用します。
省略可能なパラメータ
省略可能なパラメータについては、「Office ソリューションの省略可能なパラメータについて」を参照してください。
例
次のコード例は、SetValidationError メソッドを使用して、XMLNode に対するカスタムの検証エラー メッセージを設定します。XMLNode が有効でない場合は、ValidationError のイベント ハンドラがカスタムの検証エラー メッセージを表示します。この例では、現在の文書に CustomerAddress1Node と CustomerZipNode という名前で、整数データ型のスキーマ要素に対応付けられた 2 つの XMLNode オブジェクトが含まれることが前提となっています。
Private Sub XMLNodeValidationError()
' Set custom error message for Address1 element.
Dim errorText As String = Me.CustomerAddress1Node.BaseName & _
" element must be an integer."
Dim objErrorText As Object = CType(errorText, Object)
Me.CustomerAddress1Node.SetValidationError( _
Word.WdXMLValidationStatus.wdXMLValidationStatusCustom, _
objErrorText, False)
' This does not raise a validation error.
Dim val As Integer = 22222
Me.CustomerZipNode.NodeText = val.ToString()
' This raises a validation error.
Me.CustomerAddress1Node.NodeText = "Seventeen Hundred Twenty One"
End Sub
Private Sub CustomerNode_ValidationError(ByVal sender As Object, _
ByVal e As EventArgs) Handles CustomerZipNode.ValidationError, _
CustomerAddress1Node.ValidationError
Dim tempNode As Microsoft.Office.Tools.Word.XMLNode = CType(sender, _
Microsoft.Office.Tools.Word.XMLNode)
MsgBox("Error: " & tempNode.ValidationErrorText(False))
End Sub
private void XMLNodeValidationError()
{
// Set custom error message for Address1 element.
string errorText = this.CustomerAddress1Node.BaseName +
" element must be an integer.";
object objErrorText = (object)errorText;
this.CustomerAddress1Node.SetValidationError(
Word.WdXMLValidationStatus.wdXMLValidationStatusCustom,
ref objErrorText, false);
// Attach validation event handlers.
this.CustomerZipNode.ValidationError +=
new EventHandler(CustomerNode_ValidationError);
this.CustomerAddress1Node.ValidationError +=
new EventHandler(CustomerNode_ValidationError);
// This does not raise a validation error.
int val = 22222;
this.CustomerZipNode.NodeText = val.ToString();
// This raises a validation error.
this.CustomerAddress1Node.NodeText =
"Seventeen Hundred Twenty One";
}
void CustomerNode_ValidationError(object sender, EventArgs e)
{
Microsoft.Office.Tools.Word.XMLNode tempNode =
(Microsoft.Office.Tools.Word.XMLNode)sender;
MessageBox.Show("Error: " + tempNode.ValidationErrorText[false]);
}
アクセス許可
- 直前の呼び出し元に対する完全な信頼。このメンバは、部分的に信頼されているコードから使用することはできません。詳細については、「部分信頼コードからのライブラリの使用」を参照してください。