Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Das InfoPath-Objektmodell mit verwaltetem Code stellt Objekte und Auflistungen bereit, mit deren Hilfe der Zugriff auf Informationen zur InfoPath-Anwendung ermöglicht wird, einschließlich Informationen zu dem einem Formular zugrunde liegenden XML-Dokument und der Formulardefinitionsdatei (XSF). Auf diese Daten wird über das Objekt der obersten Ebene in der InfoPath-Objektmodellhierarchie zugegriffen, das mithilfe der Application-Klasse instanziiert wird.
In einem InfoPath-Formularvorlagenprojekt mit verwaltetem Code, das mit Visual Studio 2012 erstellt wurde, können Sie die Schlüsselwort (keyword) this (C#) oder Me (Visual Basic) verwenden, um auf eine instance der Application-Klasse zuzugreifen, die die aktuelle InfoPath-Anwendung darstellt, die dann für den Zugriff auf die Eigenschaften und Methoden der Application-Klasse verwendet werden kann.
Beispiel
Anzeigen des Anwendungsnamens, der Version und der Sprachen-ID
Im folgenden Beispiel werden die Eigenschaften Name und Version der Application-Klasse verwendet, um den Namen und die Versionsnummer des ausgeführten instance von InfoPath zurückzugeben. Die LanguageSettings-Eigenschaft wird dann verwendet, um ein LanguageSettings-Objekt zurückzugeben, das wiederum verwendet wird, um die LCID (eine vierstellige Zahl) für die Sprache zurückzugeben, die derzeit für die InfoPath-Benutzeroberflächensprache verwendet wird. Schließlich werden alle diese Informationen in einem Meldungsfeld angezeigt.
Wichtig
Damit die LanguageSettings-Eigenschaft funktioniert, müssen Sie auf der Registerkarte COM des Dialogfelds Verweis hinzufügen in Visual Studio 2012 einen Verweis auf die Microsoft Office 14.0-Objektbibliothek einrichten. Dadurch wird ein Verweis auf den Microsoft.Office.Core-Namespace eingerichtet, der die LanguageSettings-Klasse enthält. Darüber hinaus muss das Formular als "Voll vertrauenswürdig" ausgeführt werden.
Dieses Beispiel erfordert eine using- oder Imports-Direktive für den Microsoft.Office.Core-Namespace im Deklarationsabschnitt des Formularcodemoduls.
string appName = this.Application.Name;
string appVersion = this.Application.Version;
LanguageSettings langSettings =
(LanguageSettings)this.Application.LanguageSettings;
int langID =
langSettings.get_LanguageID(MsoAppLanaguageID.msoLanguageIDUI);
MessageBox.Show(
"Name: " + appName + System.Environment.NewLine +
"Version: " + appVersion + System.Environment.NewLine +
"Language ID: " + langID);
Dim appName As String appName = Me.Application.Name
Dim appVersion As String = Me.Application.Version
Dim langSettings As LanguageSettings = _
DirectCast(Me.Application.LanguageSettings, LanguageSettings)
Dim langID As Integer = _
langSettings.LanguageID(MsoAppLanaguageID.msoLanguageIDUI)
MessageBox.Show( _
"Name: " + appName + System.Environment.NewLine + _
"Version: " + appVersion + System.Environment.NewLine + _
"Language ID: " + langID)