XmlEvent.Validating Evento
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Ocorre depois que alterações no documento XML subjacente de um formulário foram aceitas, mas antes do Changed evento ocorrer.
public:
abstract event Microsoft::Office::InfoPath::XmlValidatingEventHandler ^ Validating;
public abstract event Microsoft.Office.InfoPath.XmlValidatingEventHandler Validating;
member this.Validating : Microsoft.Office.InfoPath.XmlValidatingEventHandler
Public MustOverride Custom Event Validating As XmlValidatingEventHandler
Tipo de evento
Exceções
O desenvolvedor tentou associar o evento a um nó em uma fonte de dados secundária. Esse evento não tem suporte para fontes de dados secundárias.
Exemplos
No exemplo a seguir, após uma alteração ter sido aceita para field9, o evento Validando é gerado e um FormError objeto associado ao field6 é adicionado ao FormErrorCollection do formulário usando o Add(XPathNavigator, String, String, String) método.
Isso associa uma mensagem de erro ao field6. A cadeia de caracteres passada como o message
parâmetro do método Add é exibida em uma dica de tela quando o usuário passa o mouse sobre o campo6. Quando o usuário clica com o botão direito do mouse em field6 e, em seguida, clica na descrição completa do erro, o InfoPath exibe a mensagem de erro completa, incluindo a cadeia de caracteres passada como o messageDetails
parâmetro do método Add .
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
Comentários
Importante: o evento Validação não deve ser instanciado pelo desenvolvedor no código de formulário. Quando você adiciona um manipulador de eventos ao modelo de formulário da interface do usuário do modo de design, o Microsoft InfoPath gera código no método InternalStartup do arquivo de código de formulário usando a EventManager classe e o XmlEvent membro da classe para associar eventos no nível do documento aos manipuladores de eventos. Para obter informações sobre como adicionar manipuladores de eventos no modo de design do InfoPath, consulte Como adicionar um manipulador de eventos.
O evento Validando está vinculado usando o XmlValidatingEventHandler delegado.
Esse manipulador de eventos não permite que os usuários cancelem uma operação.
Durante o evento Validar , o documento XML subjacente do formulário é colocado no modo somente leitura.
O evento Validar normalmente é usado para lidar com erros e trabalhar com a FormErrorCollection coleção, por exemplo, adicionando novos erros ou excluindo os existentes.
This type or member can be accessed from code running in forms opened in Microsoft InfoPath Filler or in a Web browser.