Evento FormEvents.Save
Si verifica quando viene utilizzato il comando Salva o Salva con nome dall'interfaccia utente o oppure quando vengono utilizzati i metodi Save e SaveAs.
Spazio dei nomi: Microsoft.Office.InfoPath
Assembly: Microsoft.Office.InfoPath (in microsoft.office.infopath.dll)
Sintassi
Public Event Save As SaveEventHandler
Dim instance As FormEvents
Dim handler As SaveEventHandler
AddHandler instance.Save, handler
public abstract event SaveEventHandler Save
Eccezioni
Tipo eccezione | Condizione |
---|---|
Lo sviluppatore ha cercato di associare l'evento in una posizione diversa dal metodo InternalStartup. |
Osservazioni
![]() |
---|
Gli sviluppatori non devono creare un'istanza dell'evento Save nel codice del modulo. È consigliabile aggiungere gestori eventi per eventi a livello di modulo solo dall'interfaccia utente in modalità progettazione di Microsoft Office InfoPath 2007. Quando si aggiunge un gestore eventi al modello di modulo dall'interfaccia utente in modalità progettazione, tramite InfoPath viene generato codice nel metodo InternalStartup del file di codice del modulo utilizzando la classe EventManager e il membro della classe FormEvents per associare l'evento al relativo gestore eventi. Per informazioni su come aggiungere gestori eventi in modalità progettazione di InfoPath, vedere Procedura: Aggiungere un gestore eventi. |
L'evento Save viene generato solo se è impostata l'opzione Salva con codice personalizzato nella finestra di dialogo Opzioni modulo del modello di modulo.
L'evento Save viene associato utilizzando il delegato SaveEventHandler.
L'evento Save può essere annullato utilizzando la proprietà CancelableArgs della classe SaveEventArgs per impostare la proprietà Cancel su true.
L'oggetto SaveEventArgs, passato come parametro a un gestore eventi per l'evento Save, implementa proprietà e metodi che possono essere utilizzati per ottenere il nome di file del modulo, per determinare lo stato di salvataggio e per eseguire l'operazione di salvataggio.
A questo tipo o membro può accedere solo il codice in esecuzione in moduli aperti in Microsoft Office InfoPath 2007.
Esempio
Nell'esempio seguente viene utilizzato il gestore eventi per l'evento Save per verificare se il campo Field2 è vuoto e, in caso contrario, viene eseguita un'operazione di salvataggio. Se il campo è vuoto, viene visualizzato un messaggio e l'operazione di salvataggio viene annullata.
public void FormEvents_Save(object sender, SaveEventArgs e)
{
// Check to see if Field2 is empty.
XPathNavigator reqField =
CreateNavigator().SelectSingleNode("/my:myFields/my:field2",
NamespaceManager);
if(reqField.ToString() == "")
{
MessageBox.Show("Field2 is empty.\nYou cannot save the form.");
e.CancelableArg.Cancel = true;
}
else
{
// The Dirty property will be set to false if save is successful.
e.PerformSaveOperation();
e.CancelableArgs.Cancel = false;
}
}
Public Sub FormEvents_Save(ByVal sender As Object, _
ByVal e As SaveEventArgs)
' Check to see if Field2 is empty.
Dim reqField as XPathNavigator =
CreateNavigator().SelectSingleNode("/my:myFields/my:field2", _
NamespaceManager)
If(reqField.ToString() = "") Then
MessageBox.Show("Field2 is empty" & vbNewLine & _
"You cannot save the form.")
e.CancelableArgs.Cancel = True
Else
' The Dirty property will be set to false if save is successful.
e.PerformSaveOperation()
e.CancelableArgs.Cancel = False
End If
End Sub
Vedere anche
Riferimenti
Classe FormEvents
Membri FormEvents
Spazio dei nomi Microsoft.Office.InfoPath