Поделиться через


DataDOMEvent.ReportError Метод

Определение

Создает ErrorObject объект и добавляет его в коллекцию ErrorsCollection .

public:
 Microsoft::Office::Interop::InfoPath::SemiTrust::ErrorObject ^ ReportError(System::Object ^ varNode, System::String ^ bstrShortErrorMessage, bool fSiteIndependent, System::String ^ bstrDetailedErrorMessage, int lErrorCode, System::String ^ bstrType);
public Microsoft.Office.Interop.InfoPath.SemiTrust.ErrorObject ReportError (object varNode, string bstrShortErrorMessage, bool fSiteIndependent, string bstrDetailedErrorMessage, int lErrorCode, string bstrType);
abstract member ReportError : obj * string * bool * string * int * string -> Microsoft.Office.Interop.InfoPath.SemiTrust.ErrorObject
Public Function ReportError (varNode As Object, bstrShortErrorMessage As String, fSiteIndependent As Boolean, bstrDetailedErrorMessage As String, lErrorCode As Integer, bstrType As String) As ErrorObject

Параметры

varNode
Object

Узел модели объектов документа XML (DOM), с которым связана ошибка.

bstrShortErrorMessage
String

Текст, который будет использоваться в кратком сообщении об ошибке.

fSiteIndependent
Boolean

Задает условие автоматического удаления объекта Error. Если значение равно true, объект Error удаляется при изменении любых узлов, совпадающих с выражением XPath, которое соответствует объекту Error. Если значение равно false, объект Error будет удален при изменении узла, возвращаемого свойством Site заданного объекта события.

bstrDetailedErrorMessage
String

Текст, который будет использоваться в подробном сообщении об ошибке.

lErrorCode
Int32

Число, которое будет использоваться в качестве кода ошибки.

bstrType
String

Значение по умолчанию: "modeless". Указывает, будет ли изменение значения автоматически отклонено или будет отображен запрос к пользователю о принятии или отклонении изменения. Другое значение: "modal".

Возвращаемое значение

Объект ErrorObject , представляющий только что созданную ошибку.

Примеры

В следующем примере Site свойство DataDOMEventObject объекта используется для проверка значения узла. Если не удается выполнить проверку данных, метод ReportError используется для создания настраиваемой ошибки.

[InfoPathEventHandler(MatchPath="/my:myFields/my:field1", EventType=InfoPathEventType.OnValidate)]
public void field1_OnValidate(DataDOMEvent e)
{
 if (int.Parse(e.Site.text) > 50)
 {
  e.<span class="label">ReportError</span>(
   e.Site, 
   "Invalid quantity. The total number of each type of block cannot exceed 50.", 
   false,
   "",
   2,
   "modeless");
 }

 if (int.Parse(e.Site.text) &lt; 0)
 {
  e.ReportError(
   e.Site, 
   "Invalid quantity. The total number of each type of block cannot be less than 0.", 
   false,
   "",
   2,
   "modeless");
 }
}

Комментарии

При вызове метода ReportError Microsoft InfoPath создает объект Error и добавляет его в коллекцию Errors . Ошибки удаляются из семейства, когда ограничение проверки становится допустимым. В некоторых случаях их можно явно удалить с помощью Delete(Object, String) методов или DeleteAll() .

Ошибки также можно создать с помощью Add(Object, String, String, String, Int32, String) метода .

Примечание. Ошибки, независимые от сайта, следует использовать, если требуется, чтобы ошибки применялись ко всем узлам XML DOM одного типа. Чтобы ошибка относилась к определенному узлу XML DOM, следует использовать ошибки, зависящие от сайта.

Примечание. Метод ReportError можно использовать только во время OnValidate события.

Важно! Доступ к этому члену можно получить только с помощью форм, работающих в том же домене, что и открытая форма, или с помощью форм, которым предоставлены междоменные разрешения.

Применяется к