FormEvents.Sign 事件

定义

在选定一组要通过“数字签名”对话框进行签名的签名数据后发生。

public:
 abstract event Microsoft::Office::InfoPath::SignEventHandler ^ Sign;
public abstract event Microsoft.Office.InfoPath.SignEventHandler Sign;
member this.Sign : Microsoft.Office.InfoPath.SignEventHandler 
Public MustOverride Custom Event Sign As SignEventHandler 

事件类型

例外

开发人员尝试绑定 InternalStartup 方法以外的某个位置的事件。

没有使用“表单选项”对话框的“安全和信任”类别将表单模板配置为“完全信任”。

示例

在以下示例中,通过使用 在 InfoPath 设计模式用户界面的“开发工具”选项卡上单击“签名事件”,将事件事件处理程序添加到Sign表单中,使用 类的 Signature 方法将数字签名添加到表单Sign()中。

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
}

注解

重要提示:开发人员 Sign 不应在表单代码中实例化该事件。 应仅从 Microsoft InfoPath 设计模式用户界面为表单级事件添加事件处理程序。 从设计模式用户界面向表单模板添加事件处理程序时,InfoPath 使用 EventManager 类和 类的成员FormEvents在表单代码文件的 InternalStartup 方法中生成代码,以将事件绑定到其事件处理程序。 有关如何在 InfoPath 设计模式下添加事件处理程序的信息,请参阅如何:添加事件处理程序。

使用 Sign 委托绑定 SignEventHandler 事件。

需要具有“完全信任”安全级别才能运行此事件的事件处理程序。 若要设置此安全级别,请在 InfoPath 设计器中单击“文件”选项卡,单击“表单选项”,选择“安全和信任”,取消选中“自动确定安全级别”,然后选择“完全信任”。 必须安装设置为“完全信任”安全级别的表单,或者对其进行数字签名。

可以使用 事件的事件处理程序 Sign 向数字签名添加其他数据。 例如,可以添加受信任时间戳服务器中的数据,也可以添加事务的服务器端副署。 如果当前用户不是特定组的成员,还可以使用事件处理程序阻止签名。

只能由从表单模板打开的表单访问此成员,已使用“表单选项”对话框“安全和信任”类别将该模板配置为以完全信任状态运行。 此成员要求直接调用方的完全信任并且不能由部分信任的代码使用。 有关更多信息,请参阅 MSDN 上的“使用部分信任的代码中的库”。

可以通过 Microsoft InfoPath Filler 中打开的表单中运行的代码访问此类型或成员。

适用于