XmlForm.Extension 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取一个 Object ,用于使用 System.Reflection 访问窗体的主要表单代码文件中包含的函数和全局变量。
public:
abstract property System::Object ^ Extension { System::Object ^ get(); };
public abstract object Extension { get; }
member this.Extension : obj
Public MustOverride ReadOnly Property Extension As Object
属性值
一个 Object ,用于使用 System.Reflection 访问窗体的主要表单代码文件中包含的函数和全局变量。
示例
在下面的代码示例中, Extension 属性用于返回 System.Object ,以调用名为 的 MyMethod
自定义方法。
object extObj = this.Extension;
extObj.GetType().InvokeMember("MyMethod",
BindingFlags.InvokeMethod |
BindingFlags.DeclaredOnly |
BindingFlags.Public |
BindingFlags.Instance, null, extObj, null);
Dim extObj As Object extObj = Me.Extension
extObj.GetType().InvokeMember("MyMethod", _
BindingFlags.InvokeMethod Or _
BindingFlags.DeclaredOnly Or _
BindingFlags.Public Or _
BindingFlags.Instance, Nothing, extObj, Nothing)
在下面的代码示例中,可以使用 Extension 属性从自定义任务窗格访问名为 myCustomMethod
InfoPath 表单代码项目类的方法。
// Custom method added to the form code project.
public string myCustomMethod()
{
return "Method value";
}
' Custom method added to the form code project.
Function myCustomMethod() As String
myCustomMethod = "Method value"
End Function
若要从自定义任务窗格中的脚本访问myCustomMethod
,请使用 DHTML 窗口对象的 DHTML 外部属性。
objXmlForm = window.external.XmlForm;
myString = objXmlForm.Extension.myCustomMethod();
Dim objXmlForm
Dim myString
Set objXmlForm = window.external.XmlForm
myString = objXmlForm.Extension.myCustomMethod()
注解
Extension 属性返回的 System.Object 便于使用在 InfoPath 表单的代码文件中实现的函数和全局变量。 通常,可以从自定义任务窗格、自定义对话框,或者在需要直接访问函数和变量的视图的 XSL 转换 (XSLT) 中使用该对象。
若要在自定义任务窗格中使用 System.Object,必须先使用 DHTML XmlForm 对象的动态 HTML (DHTML) external 属性设置一个对 window 对象的引用,如以下示例中所示。
objXmlForm = window.external.XmlForm;
此成员只能由与当前打开的表单在相同域中运行的表单访问,或者由已授予跨域权限的表单访问。
可以通过 Microsoft InfoPath Filler 中打开的表单中运行的代码访问此类型或成员。