다음을 통해 공유


XmlForm.Extension 속성

System.Reflection을 사용하여 양식의 기본 양식 코드 파일에 포함된 함수 및 전역 변수에 액세스하기 위한 Object를 가져옵니다.

네임스페이스:  Microsoft.Office.InfoPath
어셈블리:  Microsoft.Office.InfoPath(Microsoft.Office.InfoPath.dll)

구문

‘선언
Public MustOverride ReadOnly Property Extension As Object
    Get
‘사용 방법
Dim instance As XmlForm
Dim value As Object

value = instance.Extension
public abstract Object Extension { get; }

속성 값

형식: System.Object
System.Reflection을 사용하여 양식의 기본 양식 코드 파일에 포함된 함수 및 전역 변수에 액세스하기 위한 Object입니다.

주의

Extension 속성에 의해 반환되는 System.Object는 InfoPath 양식 코드 파일에서 구현되는 함수 및 전역 변수를 보다 쉽게 사용할 수 있도록 합니다. 일반적으로 이 개체는 사용자 지정 작업창, 사용자 지정 대화 상자 또는 함수와 변수에 직접 액세스해야 하는 보기의 XSLT(XSL 변환)에서 사용합니다.

사용자 지정 작업창 내에서 System.Object를 사용하려면 이 예제에 나와 있는 대로 DHTML window 개체의 DHTML(동적 HTML) external 속성을 사용하여 XmlForm 개체에 대한 참조를 설정해야 합니다.

objXmlForm = window.external.XmlForm;

이 멤버는 현재 열려 있는 양식과 같은 도메인에서 실행하는 양식 또는 도메인 간 권한이 부여된 양식에서만 액세스할 수 있습니다.

이 형식 또는 멤버는 Microsoft InfoPath Filer에서 연 양식에서 실행되는 코드에서만 액세스할 수 있습니다.

다음 코드 예제에서는 Extension 속성을 사용하여 MyMethod라고 하는 사용자 지정 메서드를 호출하기 위한 System.Object를 반환합니다.

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 속성을 사용하여 사용자 지정 작업창에서 InfoPath 양식 코드 프로젝트 클래스의 myCustomMethod라고 하는 메서드에 액세스합니다.

// 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 window 개체의 DHTML external 속성을 사용합니다.

objXmlForm = window.external.XmlForm;
myString = objXmlForm.Extension.myCustomMethod();
Dim objXmlForm
Dim myString
Set objXmlForm = window.external.XmlForm
myString = objXmlForm.Extension.myCustomMethod()

참고 항목

참조

XmlForm 클래스

XmlForm 멤버

Microsoft.Office.InfoPath 네임스페이스