FormErrorCollection.Add Method (XPathNavigator, String, String, String, Int32)
Creates and adds a new FormError to the FormErrorCollection object associated with the current form.
Namespace: Microsoft.Office.InfoPath
Assembly: Microsoft.Office.InfoPath (in Microsoft.Office.InfoPath.dll)
Syntax
'Declaration
Public MustOverride Function Add ( _
context As XPathNavigator, _
name As String, _
message As String, _
messageDetails As String, _
errorCode As Integer _
) As FormError
'Usage
Dim instance As FormErrorCollection
Dim context As XPathNavigator
Dim name As String
Dim message As String
Dim messageDetails As String
Dim errorCode As Integer
Dim returnValue As FormError
returnValue = instance.Add(context, name, _
message, messageDetails, errorCode)
public abstract FormError Add(
XPathNavigator context,
string name,
string message,
string messageDetails,
int errorCode
)
Parameters
context
Type: System.Xml.XPath.XPathNavigatorAn XPathNavigator object positioned at the node that the error will be associated with.
name
Type: System.StringThe name of the error (cannot be blank).
message
Type: System.StringThe short message for the error.
messageDetails
Type: System.StringThe detailed message for the error.
errorCode
Type: System.Int32The error code of the error.
Return Value
Type: Microsoft.Office.InfoPath.FormError
A reference to the new FormError that was added to the collection.
Exceptions
Exception | Condition |
---|---|
ArgumentException | The name is a null reference (Nothing in Visual Basic) or an empty string. |
ArgumentException | An error of the same name already exists in the collection. |
ArgumentNullException | The parameters passed to this method are a null reference (Nothing in Visual Basic). |
ArgumentException | The parameters passed to this method are not valid. For example, they are of the wrong type or format. |
Remarks
The FormErrorType of the new FormError will be set to UserDefined.
Note
It is possible to add multiple errors with the same name parameter value to different context nodes. However, if you add an error with the same name to the same context node twice, the second error added overwrites the first one.
This member can be accessed only by forms running in the same domain as the currently open form, or by forms that have been granted cross-domain permissions.
This type or member can be accessed from code running in forms opened in Microsoft InfoPath Filler or in a Web browser.
Examples
In the following example, first an XPathNavigator object is positioned at the field with which to associate an error. Then, the XPathNavigator, name, message, detailed message, error code, and error number are passed to the Add method of the FormErrorCollection class to add the error to the form's error collection.
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);
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)