This documentation is archived and is not being maintained.

Signature.Sign Method (Microsoft.Office.InfoPath)

Writes the XML digital signature block and computes the cryptographic hash for the signed data.

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

public abstract void Sign ()

Exception typeCondition


Form code attempted to write to the underlying XML document after signing was initiated.


The form template is not configured for Full Trust using the Security and Trust category of the Form Options dialog box.

The Sign method can only be called from an event handler for the Sign event.

This member can be accessed only by forms opened from a form template that as been configured to run with full trust using the Security and Trust category of the Form Options dialog box. This member requires full trust for the immediate caller and cannot be used by partially trusted code. For more information, see "Using Libraries from Partially Trusted Code" on MSDN.

This type or member can be accessed only from code running in forms opened in Microsoft Office InfoPath 2007.

The following example shows the code skeleton that is added to the form template when you add an event handler for the Sign event. First, it uses the CreateSignature method of the SignatureCollection class to create a new Signature object. It then calls the Sign method of the Signature class to add the new Signature object to the SignatureCollection object of the form without displaying the Digital Signatures dialog box.

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

   Signature thisSignature = 

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

   e.SignatureWizard = false;