Freigeben über


FormEvents.Sign-Ereignis

Tritt ein, nachdem eine Gruppe signierter Daten im Dialogfeld Digitale Signaturen zum Signieren ausgewählt wurde.

Namespace:  Microsoft.Office.InfoPath
Assembly:  Microsoft.Office.InfoPath (in Microsoft.Office.InfoPath.dll)

Syntax

'Declaration
Public MustOverride Event Sign As SignEventHandler
'Usage
Dim instance As FormEvents
Dim handler As SignEventHandler

AddHandler instance.Sign, handler
public abstract event SignEventHandler Sign

Ausnahmen

Ausnahme Bedingung
InvalidOperationException

Es wurde versucht, das Ereignis an einen anderen Speicherort als die InternalStartup-Methode zu binden.

SecurityException

Die Formularvorlage ist in der Kategorie Sicherheit und Vertrauensstellung der Dialogfeldes Formularoptionen nicht auf Voll Vertrauenswürdig festgelegt.

Hinweise

Wichtig

Das Sign-Ereignis sollte nicht vom Entwickler im Formularcode instanziiert werden. Ereignishandler für Ereignisse auf Formularebene sollten nur über die Microsoft InfoPath 2010-Entwurfsmodus-Benutzeroberfläche hinzugefügt werden. Wenn Sie der Formularvorlage über die Entwurfsmodus-Benutzeroberfläche einen Ereignishandler hinzufügen, wird in InfoPath mithilfe der EventManager-Klasse und des Members der FormEvents-Klasse in der InternalStartup-Methode der Formularcodedatei Code generiert, um das Ereignis an den zugehörigen Ereignishandler zu binden. Weitere Informationen zum Hinzufügen von Ereignishandlern im InfoPath-Entwurfsmodus finden Sie unter Vorgehensweise: Hinzufügen eines Ereignishandlers.

Das Sign-Ereignis wird mithilfe des SignEventHandler-Delegats gebunden.

Für die Ausführung eines Ereignishandlers dieses Ereignisses muss die Sicherheitsebene auf Voll vertrauenswürdig festgelegt werden. Zum Festlegen dieser Sicherheitsebene klicken Sie in InfoPath Designer auf die Registerkarte Datei und dann auf Formularoptionen. Wählen Sie Sicherheit und Vertrauensstellung aus, deaktivieren Sie Sicherheitsstufe automatisch ermitteln, und wählen Sie dann Voll vertrauenswürdig aus. Ein auf die Sicherheitsebene Voll vertrauenswürdig festgelegtes Formular muss installiert oder digital signiert werden.

Sie können mithilfe des Ereignishandlers des Sign-Ereignisses der digitalen Signatur zusätzliche Daten hinzufügen. So können Sie beispielsweise Daten eines vertrauenswürdigen Zeitstempelservers oder eine serverseitige Gegensignatur der Transaktion hinzufügen. Sie können mit dem Ereignishandler auch weitere Signaturen blockieren, wenn der aktuelle Benutzer nicht Mitglied einer bestimmten Gruppe ist.

Auf den Member kann nur über Formulare zugegriffen werden, die über eine Formularvorlage geöffnet werden. Die Formularvorlage muss zum voll vertrauenswürdigen Ausführen mithilfe der Kategorie Sicherheit und Vertrauensstellung des Dialogfelds Formularoptionen konfiguriert werden. Der Member erfordert volle Vertrauenswürdigkeit für den sofortigen Aufrufer und kann nicht von teilweise vertrauenswürdigem Code verwendet werden. Weitere Informationen finden Sie unter "Verwenden von Bibliotheken aus teilweise vertrauenswürdigem Code" auf MSDN.

Auf diesen Typ oder diesen Member kann nur über Code zugegriffen werden, der in Formularen ausgeführt wird, die mit Microsoft InfoPath Filler geöffnet wurden.

Beispiele

Im folgenden Beispiel, das auf der InfoPath-Entwurfsmodus-Benutzeroberfläche durch Hinzufügen eines Ereignishandlers für das Sign-Ereignis zum Formular erstellt wurde (durch Klicken auf Sign-Ereignis auf der Registerkarte Entwickler), wird dem Formular mithilfe der Sign-Methode der Signature-Klasse eine digitale Signatur hinzugefügt.

public void FormEvents_Sign(object sender, SignEventArgs e)
{
   // This event handler will run only in fully trusted form templates.

   Signature thisSignature = 
     e.SignedDataBlock.Signatures.CreateSignature();

   // To add other pieces of information to sign, modify the
   // signature template returned by 
   // thisSignature.SignatureBlockXmlNode.
   // Write your code here.

   thisSignature.Sign();
   e.SignatureWizard = false;
}
Public Sub FormEvents_Sign(ByVal sender As Object, _
   ByVal e As SignEventArgs)
   ' This event handler will run only in fully trusted form templates.

   Dim thisSignature As Signature = _
     e.SignedDataBlock.Signatures.CreateSignature

   ' To add other pieces of information to sign, modify the
   ' signature template returned by 
   ' thisSignature.SignatureBlockXmlNode.
   ' Write your code here.

   thisSignature.Sign()
   e.SignatureWizard = False
}

Siehe auch

Referenz

FormEvents Klasse

FormEvents-Member

Microsoft.Office.InfoPath-Namespace