Sie sind zurzeit offline. Es wird auf die erneute Herstellung einer Internetverbindung gewartet.

Ihr Browser wird nicht unterstützt.

Sie müssen Ihren Browser aktualisieren, um die Website zu verwenden.

Aktualisieren Sie auf die neueste Version von Internet Explorer.

Programmgesteuertes Ändern der Standardansicht eines InfoPath-Formulars

Der Support für Office 2003 wurde eingestellt

Microsoft stellte am 8. April 2014 den Support für Office 2003 ein. Diese Änderung wirkt sich auf Ihre Softwareupdates und Sicherheitsoptionen aus. Erfahren Sie, was das für Sie bedeutet und wie Sie Ihren Schutz aufrechterhalten können.

Zusammenfassung
Microsoft Office InfoPath-Formulare unterstützen mehrere Ansichten. Eine Ansicht ist die Standardansicht. Wenn Sie ein Formular in Microsoft InfoPath 2010, Microsoft Office InfoPath 2007 oder Microsoft Office InfoPath 2003 öffnen, wird es in der Standardansicht geöffnet. Dieser Artikel enthält ein Beispiel dafür, wie Sie die Standardansicht eines InfoPath-Formulars programmseitig ändern.

Erstellen eines neuen Formulars

  1. Starten Sie InfoPath.
    • InfoPath Designer 2010:
      1. Klicken Sie auf Neu, dann auf Leeres Formular und anschließend auf Formular entwerfen.
    • InfoPath 2007:
      1. Klicken Sie im Menü Datei auf Eine Formularvorlage entwerfen.
      2. Klicken Sie im Aufgabenbereich Eine Formularvorlage entwerfen auf Leer, und klicken Sie dann auf OK.
    • InfoPath 2003:
      1. Klicken Sie im Menü Datei auf Ein Formular entwerfen.
      2. Klicken Sie im Aufgabenbereich Ein Formular entwerfen auf Neues leeres Formular erstellen.

Erstellen von Ansicht 1

InfoPath 2010:
  1. Geben Sie in das leere Formular für den Titel Dies ist Ansicht 1 und danach unter der gepunkteten Linie Beim Öffnen des Formulars das Anzeigen von Ansicht 2 überprüfen ein.
  2. Klicken Sie, um den Zeiger an den Anfang der zweiten Zeile zu positionieren.
  3. Doppelklicken Sie unter Steuerelemente auf Kontrollkästchen.
  4. Klicken Sie auf das Symbol Speichern.
Outlook 2007 und Outlook 2003:
  1. Geben Sie in das leere Formular in die erste Zeile Dies ist Ansicht 1 ein, und geben Sie danach in die zweite Zeile Beim Öffnen des Formulars das Anzeigen von Ansicht 2 überprüfen ein.
  2. Klicken Sie, um den Zeiger an den Anfang der zweiten Zeile zu positionieren.
  3. Klicken Sie im Dropdownmenü Aufgabenbereich auf Steuerelemente.
  4. Klicken Sie im Aufgabenbereich Steuerelemente auf Kontrollkästchen.
  5. Klicken Sie auf das Symbol Speichern.

Erstellen von Ansicht 2

InfoPath 2010:
  1. Klicken Sie auf die Registerkarte Seitenentwurf. Beachten Sie, dass Ansicht 1 die Standardansicht des Formulars ist.
  2. Klicken Sie im Abschnitt Ansichten auf Neue Ansicht.
  3. Geben Sie den Namen Ansicht 2 ein, und klicken Sie anschließend auf OK.
  4. Geben Sie für den Titel Dies ist Ansicht 2 ein.
Outlook 2007 und Outlook 2003:
  1. Klicken Sie im Dropdownmenü Aufgabenbereich auf Ansichten.

    Ansicht 1 ist die Standardansicht des Formulars.
  2. Klicken Sie im Abschnitt Aufgaben des Aufgabenbereichs auf Neue Ansicht hinzufügen.
  3. Geben Sie den Namen Ansicht 2 ein, und klicken Sie anschließend auf OK.
  4. Geben Sie in das leere Formular Dies ist Ansicht 2 ein.

Hinzufügen des Skripts

InfoPath 2007

In InfoPath 2010 und 2007 müssen Sie die gewünschte Programmiersprache festlegen. In InfoPath 2003 überspringen Sie diesen Schritt und verwenden das Verfahren Hinzufügen des Skripts.

Hinweis In diesem Beispiel wird die Programmiersprache C# verwendet, Sie können aber auch Visual Basic oder andere verfügbare Sprachen verwenden.
Festlegen der Programmiersprache
InfoPath 2010:

Bevor Sie dieses Beispielskript in InfoPath 2010 ausführen, müssen Sie die Programmiersprache in C# ändern. Gehen Sie dazu folgendermaßen vor.

Warnung Der in den folgenden Schritten erwähnte Befehl Code entfernen entfernt sämtlichen vorhandenen Code aus dem aktuellen Formular. Verwenden Sie diese Option daher nur, wenn Sie sicher sind, dass Sie diese Aktion wirklich ausführen möchten.
  1. Klicken Sie auf die Registerkarte Entwicklertools.
  2. Klicken Sie im Abschnitt Code auf Sprache, und klicken Sie anschließend auf Programmierung. Wenn das Feld Codesprache der Formularvorlage deaktiviert ist, klicken Sie auf Code entfernen, um sämtlichen vorhandenen Code aus dem Formular zu entfernen. Wenn das Feld Codesprache der Formularvorlage verfügbar ist, fahren Sie mit dem nächsten Schritt fort.
  3. Wählen Sie im Feld Codesprache der Formularvorlage auf C#, und klicken Sie dann auf OK.
InfoPath 2007:

Bevor Sie dieses Beispielskript in InfoPath 2007 ausführen, müssen Sie die Programmiersprache in C# ändern. Gehen Sie hierzu folgendermaßen vor:

Warnung Der in den folgenden Schritten erwähnte Befehl Code entfernen entfernt sämtlichen vorhandenen Code aus dem aktuellen Formular. Verwenden Sie diese Option daher nur, wenn Sie sicher sind, dass Sie diese Aktion wirklich ausführen möchten.
  1. Klicken Sie im Menü Extras auf Formularoptionen.
  2. Klicken Sie in der Liste Kategorie auf Programmierung. Wenn das Feld Codesprache der Formularvorlage deaktiviert ist, klicken Sie auf Code entfernen, um sämtlichen vorhandenen Code aus dem Formular zu entfernen. Wenn das Feld Codesprache der Formularvorlage verfügbar ist, fahren Sie mit dem nächsten Schritt fort.
  3. Klicken Sie im Feld Codesprache der Formularvorlage auf C# und dann auf OK.
Hinzufügen des Skripts
InfoPath 2010:

Fügen Sie das Skript zum Loading-Ereignis hinzu. Gehen Sie hierzu folgendermaßen vor:
  1. Klicken Sie auf der Registerkarte Entwicklertools auf Loading-Ereignis. Microsoft Visual Studio Tools for Applications wird gestartet.
  2. Fügen Sie den folgenden Beispielcode an den angegebenen Stellen hinzu.
    {            //Create an XPathNavigator object for the main DOM            XPathNavigator xnDocument = this.MainDataSource.CreateNavigator();            //Create an XPathNavigator object for field1 - the check box for switching the View            XPathNavigator xnDefaultView = xnDocument.SelectSingleNode("/my:myFields/my:field1", this.NamespaceManager);                  //Make sure that the XPathNavigator object is not null or an empty string            if ((xnDefaultView != null) && (xnDefaultView.Value != ""))            {                //Switch to the appropriate View                switch (xnDefaultView.Value)                {                    case "false":                        e.SetDefaultView("View 1");                        break;                    case "true":                        e.SetDefaultView("View 2");                        break;                }        }}
  3. Speichern Sie die Änderungen, und schließen Sie dann Visual Studio Tools for Applications.
  4. Speichern Sie Ihre Formularvorlage unter SwitchDefaultView.xsn, und schließen Sie dann die Formularvorlage.
InfoPath 2007

Fügen Sie das Skript zum Loading-Ereignis hinzu. Gehen Sie hierzu folgendermaßen vor:
  1. Zeigen Sie im Menü Extras auf Programmierung, und klicken Sie anschließend auf Loading-Ereignis. Microsoft Visual Studio Tools for Applications wird gestartet.
  2. Fügen Sie den folgenden Beispielcode zum Ereignis Age_OnValidate hinzu.
    {            //Create an XPathNavigator object for the main DOM            XPathNavigator xnDocument = this.MainDataSource.CreateNavigator();            //Create an XPathNavigator object for field1 - the check box for switching the View            XPathNavigator xnDefaultView = xnDocument.SelectSingleNode("/my:myFields/my:field1", this.NamespaceManager);                  //Make sure that the XPathNavigator object is not null or an empty string            if ((xnDefaultView != null) && (xnDefaultView.Value != ""))            {                //Switch to the appropriate View                switch (xnDefaultView.Value)                {                    case "false":                        e.SetDefaultView("View 1");                        break;                    case "true":                        e.SetDefaultView("View 2");                        break;                }
  3. Speichern Sie die Änderungen, und schließen Sie dann Visual Studio Tools for Applications.
  4. Speichern Sie Ihre Formularvorlage unter SwitchDefaultView.xsn, und schließen Sie dann die Formularvorlage.

InfoPath 2003

Gehen Sie in InfoPath 2003 folgendermaßen vor, um das Skript hinzuzufügen:
  1. Zeigen Sie im Menü Extras auf Skript, und klicken Sie anschließend auf Microsoft Skript-Editor.
  2. Fügen Sie dem Code-Fenster den folgenden Code hinzu:
    function XDocument::OnLoad(eventObj){	//Pick the default view based on the value of element DefaultView	var objDefaultView = XDocument.DOM.selectSingleNode("//my:field1");	if ((objDefaultView != null) && (objDefaultView.text != ""))   	{		switch (objDefaultView.text)      		{         		case "false":				    XDocument.ViewInfos("View 1").IsDefault = true;            			break;         		case "true":            			XDocument.ViewInfos("View 2").IsDefault = true;            			break;      		}   	}}
  3. Speichern Sie das Skript, und schließen Sie den Microsoft Script-Editor.
  4. Speichern Sie Ihre Formularvorlage unter SwitchDefaultView.xsn, und schließen Sie dann die Formularvorlage.

Testen des Skripts

InfoPath 2010
  1. Öffnen Sie Microsoft Office InfoPath Filler.
  2. Klicken Sie auf Formular suchen, blättern Sie zu SwitchDefaultView.xsn, und wählen Sie es aus. Klicken Sie dann auf Öffnen.

    Das Formular wird in Ansicht 1 geöffnet (in der anfänglichen Standardansicht).
  3. Aktivieren Sie das Kontrollkästchen Ansicht 2.
  4. Speichern Sie Ihr Formular unter SwitchDefaultViewForm.xml, und schließen Sie dann das Formular.
  5. Klicken Sie auf der Registerkarte Datei auf Schließen und anschließend auf Öffnen.
  6. Suchen Sie SwitchDefaultViewForm.xml, und klicken Sie danach auf Öffnen.
Das Formular wird in Ansicht 2 geöffnet.

Outlook 2007 und Outlook 2003:
  1. Klicken Sie im Menü Datei auf Ein Formular ausfüllen.

    Hinweis Stellen Sie sicher, dass Sie das Formular in diesem Schritt ausfüllen anstatt das Formular anzuzeigen. Durch das Anzeigen werden keine programmatischen Änderungen der Standardansicht im Ereignis OnLoad wiedergegeben. In der Seitenansicht wird immer die Ansicht angezeigt, die derzeit im InfoPath Designer gewählt ist.
  2. Klicken Sie in InfoPath 2007 unter Ein Formular öffnen auf SwitchDefaultView.

    Klicken Sie in InfoPath 2003 im Aufgabenbereich auf SwitchDefaultView.

    Das Formular wird in Ansicht 1 geöffnet (in der anfänglichen Standardansicht).
  3. Aktivieren Sie das Kontrollkästchen Ansicht 2.
  4. Speichern Sie Ihr Formular unter SwitchDefaultViewForm.xml, und schließen Sie dann das Formular.
  5. Klicken Sie im Menü Datei auf Öffnen.
  6. Suchen Sie SwitchDefaultViewForm.xml, und klicken Sie danach auf Öffnen.
Das Formular wird in Ansicht 2 geöffnet.
IP2007 IP2003 IP2010 VBA C# VS
Eigenschaften

Artikelnummer: 826997 – Letzte Überarbeitung: 10/04/2011 07:31:00 – Revision: 2.0

  • Microsoft Office InfoPath 2007
  • Microsoft Office InfoPath 2003
  • Microsoft Infopath 2010
  • kbhowto KB826997
Feedback
ow.location.protocol) + "//c.microsoft.com/ms.js'><\/script>");