Share via


DataDOMEventObject 接口

在 Microsoft InfoPath 数据验证事件期间使用的事件对象。

命名空间:  Microsoft.Office.Interop.InfoPath.SemiTrust
程序集:  Microsoft.Office.Interop.InfoPath.SemiTrust(位于 Microsoft.Office.Interop.InfoPath.SemiTrust.dll 中)

语法

声明
<GuidAttribute("096cd5e5-0786-11d1-95fa-0080c78ee3bb")> _
Public Interface DataDOMEventObject _
    Inherits DataDOMEvent, DocActionEvent, DocReturnEvent, DocEvent
用法
Dim instance As DataDOMEventObject
[GuidAttribute("096cd5e5-0786-11d1-95fa-0080c78ee3bb")]
public interface DataDOMEventObject : DataDOMEvent, 
    DocActionEvent, DocReturnEvent, DocEvent

备注

此类型是用于 Coclass(托管代码需要此 Coclass 来实现 COM 互操作性)的包装。使用此类型来访问由此 Coclass 实现的 COM 接口。有关 COM 接口的信息(包括指向其成员说明的链接),请参阅DataDOMEvent.

DataDOMEvent 对象提供了可以在数据验证事件中使用的多个属性和一个方法,以便以编程方式与正在验证的数据进行交互并在数据无效时提供响应。

DataDOMEvent 对象作为参数传递给 OnBeforeChangeOnValidateOnAfterChange 事件

备注

无需更改表单的基础 XML 文档,即可发生 OnValidate 事件。

DataDOMEvent 对象用于获取有关正在被更改的 XML 文档对象模型 (DOM) 节点的信息,该对象还提供了用于获取对表单的基础 XML 文档的引用的属性。此外,它还提供了用于处理数据更改的属性,包括拒绝更改和创建错误消息。

备注

DataDOMEvent 对象作为参数传递给一个数据验证事件处理程序。该对象的属性和方法只在接受该对象的事件期间可用。

示例

在以下示例中,DataDOMEvent 对象用于检查节点(使用 Site 属性)的值。如果数据验证失败,则使用 ReportError 方法创建自定义错误。

[InfoPathEventHandler(MatchPath="/my:myFields/my:field1", EventType=InfoPathEventType.OnValidate)]
public void field1_OnValidate(DataDOMEvent e)
{
if(e.Site.text != "")
{
   int quantity = int.Parse(e.Site.text.ToString());
   if(quantity > 50)
   {
      e.ReportError(e.Site, "Invalid quantity. The total number of each type of block cannot exceed 50.", false, "", 2,"modeless");
  }
   if(quantity < 0)
   {
      e.ReportError(e.Site, "Invalid quantity. The total number of each type of block cannot be less than 0.", false,"", 2,"modeless");
   }
}
}

另请参阅

引用

DataDOMEventObject 成员

Microsoft.Office.Interop.InfoPath.SemiTrust 命名空间