Compartir a través de


XmlValidatingEventArgs.ReportError Método

Definición

Sobrecargas

ReportError(XPathNavigator, Boolean, String)

Crea un FormError objeto que contiene información de error personalizada con los valores especificados y la agrega al FormErrorCollection objeto del formulario.

ReportError(XPathNavigator, Boolean, String, String)

Crea un FormError objeto que contiene información de error personalizada con los valores especificados y la agrega al FormErrorCollection objeto del formulario.

ReportError(XPathNavigator, Boolean, String, String, Int32)

Crea un FormError objeto que contiene información de error personalizada con los valores especificados y la agrega al FormErrorCollection objeto del formulario.

ReportError(XPathNavigator, Boolean, String, String, Int32, ErrorMode)

Crea un FormError objeto que contiene información de error personalizada con los valores especificados y la agrega al FormErrorCollection objeto del formulario.

ReportError(XPathNavigator, Boolean, String)

Crea un FormError objeto que contiene información de error personalizada con los valores especificados y la agrega al FormErrorCollection objeto del formulario.

public:
 abstract void ReportError(System::Xml::XPath::XPathNavigator ^ node, bool siteIndependent, System::String ^ message);
public abstract void ReportError(System.Xml.XPath.XPathNavigator node, bool siteIndependent, string message);
abstract member ReportError : System.Xml.XPath.XPathNavigator * bool * string -> unit
Public MustOverride Sub ReportError (node As XPathNavigator, siteIndependent As Boolean, message As String)

Parámetros

node
XPathNavigator

Colocado XPathNavigator en el nodo que contiene los datos a los que está asociado el error.

siteIndependent
Boolean

Establece la condición para la eliminación automática del objeto FormError. Si se establece en true, el objeto FormError se eliminará para los cambios en los nodos que coincidan con la expresión XPath devuelta por la Match propiedad de este objeto de evento. Si se establece en false, el objeto FormError se elimina la próxima vez que se valida el formulario solo cuando se cambia el nodo devuelto por la Site propiedad de este objeto de evento.

message
String

Texto utilizado para el mensaje de error breve.

Excepciones

Los parámetros que se han pasado a este método no son válidos.

Los parámetros pasados a este método son una referencia nula (Nothing en Visual Basic).

Ejemplos

En el ejemplo siguiente, la Site propiedad que la XmlValidatingEventArgs clase hereda de la XmlEventArgs clase se usa para comprobar el valor del nodo que generó el evento Validating . Si la validación de datos no se realiza con éxito, se utilizará el método ReportError para crear un error personalizado.

public void field1_Validating(object sender, XmlValidatingEventArgs e)
{
   if (e.Site.InnerXml != String.Empty)
   {
      int fieldValue = int.Parse((e.Site.InnerXml));

      if (fieldValue > 50)
      {
         e.ReportError(e.Site,
            false,
            "Quantity cannot exceed 50.");
      }

      if (fieldValue < 0)
      {
         e.ReportError(e.Site,
            false,
            "Quantity cannot be less than 0.");
      }
   }
}
Public Sub field1_Validating(ByVal sender As Object , _
   ByVal e As XmlValidatingEventArgs)
   If (e.Site.InnerXml <> String.Empty) Then
      Integer fieldValue = Integer.Parse((e.Site.InnerXml))

      If (fieldValue > 50) Then
         e.ReportError(e.Site,
            false,
            "Quantity cannot exceed 50.")
      End If

      If (fieldValue < 0) Then
         e.ReportError(e.Site,
            false,
            "Quantity cannot be less than 0.")
      End If
   End If
End Sub

Comentarios

El método ReportError se usa para crear un error personalizado para un error que se produjo durante el Validating evento.

Cuando se llama al método ReportError, InfoPath crea un objeto FormError y lo añade a la colección FormErrorCollection del formulario actual. Los objetos FormError se quitan de la colección cuando la limitación de validación deja de ser no válida. En determinados casos, se pueden quitar explícitamente mediante los Delete(FormError) métodos o DeleteAll() .

Los objetos FormError también se pueden crear mediante el Add(XPathNavigator, String, String, String) método de la clase FormErrorCollection.

Nota: Los errores independientes del sitio se deben usar cuando desee que los errores se apliquen a todos los nodos del mismo tipo. Si se desea que el error se aplique a un nodo concreto, se debe usar errores dependientes del sitio.

Únicamente se puede acceder a este miembro con formularios que se ejecuten en el mismo dominio que el formulario que está actualmente abierto o con formularios a los que se hayan concedido permisos entre dominios.

Se puede acceder a este tipo o miembro desde el código que se ejecuta en los formularios abiertos en Microsoft InfoPath Filler o en un explorador web.

Se aplica a

ReportError(XPathNavigator, Boolean, String, String)

Crea un FormError objeto que contiene información de error personalizada con los valores especificados y la agrega al FormErrorCollection objeto del formulario.

public:
 abstract void ReportError(System::Xml::XPath::XPathNavigator ^ node, bool siteIndependent, System::String ^ message, System::String ^ messageDetails);
public abstract void ReportError(System.Xml.XPath.XPathNavigator node, bool siteIndependent, string message, string messageDetails);
abstract member ReportError : System.Xml.XPath.XPathNavigator * bool * string * string -> unit
Public MustOverride Sub ReportError (node As XPathNavigator, siteIndependent As Boolean, message As String, messageDetails As String)

Parámetros

node
XPathNavigator

Colocado XPathNavigator en el nodo que contiene los datos a los que está asociado el error.

siteIndependent
Boolean

Establece la condición para la eliminación automática del objeto FormError. Si se establece en true, el objeto FormError se eliminará para los cambios en los nodos que coincidan con la expresión XPath devuelta por la Match propiedad de este objeto de evento. Si se establece en false, el objeto FormError se elimina la próxima vez que se valida el formulario solo cuando se cambia el nodo devuelto por la Site propiedad de este objeto de evento.

message
String

Texto utilizado para el mensaje de error breve.

messageDetails
String

Texto utilizado para el mensaje de error detallado.

Excepciones

Los parámetros que se han pasado a este método no son válidos.

Los parámetros pasados a este método son una referencia nula (Nothing en Visual Basic).

Ejemplos

En el ejemplo siguiente, la Site propiedad que la XmlValidatingEventArgs clase hereda de la XmlEventArgs clase se usa para comprobar el valor del nodo que generó el evento Validating . Si la validación de datos no se realiza con éxito, se utilizará el método ReportError para crear un error personalizado.

public void field1_Validating(object sender, XmlValidatingEventArgs e)
{
   if (e.Site.InnerXml != String.Empty)
   {
      int fieldValue = int.Parse((e.Site.InnerXml));

      if (fieldValue > 50)
      {
         e.ReportError(e.Site,
            false,
            "Invalid quantity",
            "The total number cannot exceed 50.");
      }

      if (fieldValue < 0)
      {
         e.ReportError(e.Site,
            false,
            "Invalid quantity",
            "The total number cannot be less than 0.");
      }
   }
}
Public Sub field1_Validating(ByVal sender As Object , _
   ByVal e As XmlValidatingEventArgs)
   If (e.Site.InnerXml <> String.Empty) Then
      Integer fieldValue = Integer.Parse((e.Site.InnerXml))

      If (fieldValue > 50) Then
         e.ReportError(e.Site,
            false,
            "Invalid quantity",
            "The total number cannot exceed 50.")
      End If

      If (fieldValue < 0) Then
         e.ReportError(e.Site,
            false,
            "Invalid quantity",
            "The total number cannot be less than 0.")
      End If
   End If
End Sub

Comentarios

El método ReportError se usa para crear un error personalizado para un error que se produjo durante el Validating evento.

Cuando se llama al método ReportError, InfoPath crea un objeto FormError y lo añade a la colección FormErrorCollection del formulario actual. Los objetos FormError se quitan de la colección cuando la limitación de validación deja de ser no válida. En determinados casos, se pueden quitar explícitamente mediante los Delete(FormError) métodos o DeleteAll() .

Los objetos FormError también se pueden crear mediante el Add(XPathNavigator, String, String, String) método de la clase FormErrorCollection.

Nota: Los errores independientes del sitio se deben usar cuando desee que los errores se apliquen a todos los nodos del mismo tipo. Si se desea que el error se aplique a un nodo concreto, se debe usar errores dependientes del sitio.

Únicamente se puede acceder a este miembro con formularios que se ejecuten en el mismo dominio que el formulario que está actualmente abierto o con formularios a los que se hayan concedido permisos entre dominios.

Se puede acceder a este tipo o miembro desde el código que se ejecuta en los formularios abiertos en Microsoft InfoPath Filler o en un explorador web.

Se aplica a

ReportError(XPathNavigator, Boolean, String, String, Int32)

Crea un FormError objeto que contiene información de error personalizada con los valores especificados y la agrega al FormErrorCollection objeto del formulario.

public:
 abstract void ReportError(System::Xml::XPath::XPathNavigator ^ node, bool siteIndependent, System::String ^ message, System::String ^ messageDetails, int errorCode);
public abstract void ReportError(System.Xml.XPath.XPathNavigator node, bool siteIndependent, string message, string messageDetails, int errorCode);
abstract member ReportError : System.Xml.XPath.XPathNavigator * bool * string * string * int -> unit
Public MustOverride Sub ReportError (node As XPathNavigator, siteIndependent As Boolean, message As String, messageDetails As String, errorCode As Integer)

Parámetros

node
XPathNavigator

Colocado XPathNavigator en el nodo que contiene los datos a los que está asociado el error.

siteIndependent
Boolean

Establece la condición para la eliminación automática del objeto FormError. Si se establece en true, el objeto FormError se eliminará para los cambios en los nodos que coincidan con la expresión XPath devuelta por la Match propiedad de este objeto de evento. Si se establece en false, el objeto FormError se elimina la próxima vez que se valida el formulario solo cuando se cambia el nodo devuelto por la Site propiedad de este objeto de evento.

message
String

Texto utilizado para el mensaje de error breve.

messageDetails
String

Texto utilizado para el mensaje de error detallado.

errorCode
Int32

Número utilizado como código de error.

Excepciones

Los parámetros que se han pasado a este método no son válidos.

Los parámetros pasados a este método son una referencia nula (Nothing en Visual Basic).

Ejemplos

En el ejemplo siguiente, la Site propiedad que la XmlValidatingEventArgs clase hereda de la XmlEventArgs clase se usa para comprobar el valor del nodo que generó el evento Validating . Si la validación de datos no se realiza con éxito, se utilizará el método ReportError para crear un error personalizado.

public void field1_Validating(object sender, XmlValidatingEventArgs e)
{
   if (e.Site.InnerXml != String.Empty)
   {
      int fieldValue = int.Parse((e.Site.InnerXml));

      if (fieldValue > 50)
      {
         e.ReportError(e.Site,
            false,
            "Invalid quantity",
            "The total number cannot exceed 50.",
            12345);

      }

      if (fieldValue < 0)
      {
         e.ReportError(e.Site,
            false,
            "Invalid quantity",
            "The total number cannot be less than 0.",
            12346);
      }
   }
}
Public Sub field1_Validating(ByVal sender As Object , _
   ByVal e As XmlValidatingEventArgs)
   If (e.Site.InnerXml <> String.Empty) Then
      Integer fieldValue = Integer.Parse((e.Site.InnerXml))

      If (fieldValue > 50) Then
         e.ReportError(e.Site,
            false,
            "Invalid quantity",
            "The total number cannot exceed 50.",
            12345)
      End If

      If (fieldValue < 0) Then
         e.ReportError(e.Site,
            false,
            "Invalid quantity",
            "The total number cannot be less than 0.",
            12346)
      End If
   End If
End Sub

Comentarios

El método ReportError se usa para crear un error personalizado para un error que se produjo durante el Validating evento.

Cuando se llama al método ReportError, InfoPath crea un objeto FormError y lo añade a la colección FormErrorCollection del formulario actual. Los objetos FormError se quitan de la colección cuando la limitación de validación deja de ser no válida. En determinados casos, se pueden quitar explícitamente mediante los Delete(FormError) métodos o DeleteAll() .

Los objetos FormError también se pueden crear mediante el Add(XPathNavigator, String, String, String) método de la clase FormErrorCollection.

Nota: Los errores independientes del sitio se deben usar cuando desee que los errores se apliquen a todos los nodos del mismo tipo. Si se desea que el error se aplique a un nodo concreto, se debe usar errores dependientes del sitio.

Únicamente se puede acceder a este miembro con formularios que se ejecuten en el mismo dominio que el formulario que está actualmente abierto o con formularios a los que se hayan concedido permisos entre dominios.

Se puede acceder a este tipo o miembro desde el código que se ejecuta en los formularios abiertos en Microsoft InfoPath Filler o en un explorador web.

Se aplica a

ReportError(XPathNavigator, Boolean, String, String, Int32, ErrorMode)

Crea un FormError objeto que contiene información de error personalizada con los valores especificados y la agrega al FormErrorCollection objeto del formulario.

public:
 abstract void ReportError(System::Xml::XPath::XPathNavigator ^ node, bool siteIndependent, System::String ^ message, System::String ^ messageDetails, int errorCode, Microsoft::Office::InfoPath::ErrorMode errorMode);
public abstract void ReportError(System.Xml.XPath.XPathNavigator node, bool siteIndependent, string message, string messageDetails, int errorCode, Microsoft.Office.InfoPath.ErrorMode errorMode);
abstract member ReportError : System.Xml.XPath.XPathNavigator * bool * string * string * int * Microsoft.Office.InfoPath.ErrorMode -> unit

Parámetros

node
XPathNavigator

Colocado XPathNavigator en el nodo que contiene los datos a los que está asociado el error.

siteIndependent
Boolean

Establece la condición para la eliminación automática del objeto FormError. Si se establece en true, el objeto FormError se eliminará para los cambios en los nodos que coincidan con la expresión XPath devuelta por la Match propiedad de este objeto de evento. Si se establece en false, el objeto FormError se elimina la próxima vez que se valida el formulario solo cuando se cambia el nodo devuelto por la Site propiedad de este objeto de evento.

message
String

Texto utilizado para el mensaje de error breve.

messageDetails
String

Texto utilizado para el mensaje de error detallado.

errorCode
Int32

Número utilizado como código de error.

errorMode
ErrorMode

que ErrorMode especifica si el error se mostrará en un cuadro de diálogo modal o modelamente con un subrayado ondulado en el control afectado.

Excepciones

Los parámetros que se han pasado a este método no son válidos.

Los parámetros pasados a este método son una referencia nula (Nothing en Visual Basic).

Ejemplos

En el ejemplo siguiente, la Site propiedad que la XmlValidatingEventArgs clase hereda de la XmlEventArgs clase se usa para comprobar el valor del nodo que generó el evento Validating . Si la validación de datos no se realiza con éxito, se utilizará el método ReportError para crear un error personalizado.

public void field1_Validating(object sender, XmlValidatingEventArgs e)
{
   if (e.Site.InnerXml != String.Empty)
   {
      int fieldValue = int.Parse((e.Site.InnerXml));

      if (fieldValue > 50)
      {
         e.ReportError(e.Site,
            false,
            "Invalid quantity",
            "The total number cannot exceed 50.",
            12345,
            ErrorMode.Modeless);
      }

      if (fieldValue < 0)
      {
         e.ReportError(e.Site,
            false,
            "Invalid quantity",
            "The total number cannot be less than 0.",
            12346,
            ErrorMode.Modeless);
      }
   }
}
Public Sub field1_Validating(ByVal sender As Object , _
   ByVal e As XmlValidatingEventArgs)
   If (e.Site.InnerXml <> String.Empty) Then
      Integer fieldValue = Integer.Parse((e.Site.InnerXml))

      If (fieldValue > 50) Then
         e.ReportError(e.Site,
            false,
            "Invalid quantity",
            "The total number cannot exceed 50.",
            12345,
            ErrorMode.Modeless)
      End If

      If (fieldValue < 0) Then
         e.ReportError(e.Site,
            false,
            "Invalid quantity",
            "The total number cannot be less than 0.",
            12346,
            ErrorMode.Modeless)
      End If
   End If
End Sub

Comentarios

El método ReportError se usa para crear un error personalizado para un error que se produjo durante el Validating evento.

Cuando se llama al método ReportError, InfoPath crea un objeto FormError y lo añade a la colección FormErrorCollection del formulario actual. Los objetos FormError se quitan de la colección cuando la limitación de validación deja de ser no válida. En determinados casos, se pueden quitar explícitamente mediante los Delete(FormError) métodos o DeleteAll() .

Los objetos FormError también se pueden crear mediante el Add(XPathNavigator, String, String, String) método de la clase FormErrorCollection.

Nota: Los errores independientes del sitio se deben usar cuando desee que los errores se apliquen a todos los nodos del mismo tipo. Si se desea que el error se aplique a un nodo concreto, se debe usar errores dependientes del sitio.

Únicamente se puede acceder a este miembro con formularios que se ejecuten en el mismo dominio que el formulario que está actualmente abierto o con formularios a los que se hayan concedido permisos entre dominios.

Únicamente se puede acceder a este tipo o miembro desde el código que se ejecuta en los formularios abiertos en Microsoft InfoPath Filler.

Se aplica a