Sdílet prostřednictvím


View.ExecuteAction-Methode

Führt einen Microsoft Office InfoPath 2007-Bearbeitungsbefehl für das einem Formular zugrunde liegende XML-Dokument aus. Diese Aktion basiert auf den Daten, die in der Ansicht ausgewählt sind.

Diese Methode ist nicht CLS-kompatibel.  

Namespace: Microsoft.Office.Interop.InfoPath.SemiTrust
Assembly: Microsoft.Office.Interop.InfoPath.SemiTrust (in microsoft.office.interop.infopath.semitrust.dll)

Syntax

'Declaration
<DispIdAttribute(14)> _
Sub ExecuteAction ( _
    bstrAction As String, _
    varXmlToEdit As Object _
)
'Usage
Dim instance As View
Dim bstrAction As String
Dim varXmlToEdit As Object

instance.ExecuteAction(bstrAction, varXmlToEdit)
[DispIdAttribute(14)] 
void ExecuteAction (
    string bstrAction,
    Object varXmlToEdit
)

Parameter

  • bstrAction
    Der Name der auszuführenden Bearbeitungsaktion.
  • varXmlToEdit
    Der Name des Feldes oder der Gruppe, auf das bzw. die die Bearbeitungsaktion angewendet werden soll. Dieser Wert entspricht dem Wert des "name"-Attributs im xmlToEdit-Element der Formulardefinitionsdatei (XSF).

Hinweise

Die ExecuteAction-Methode wird verwendet, um, basierend auf dem in einer Ansicht ausgewählten Kontext, integrierte InfoPath-Bearbeitungsaktionen für das einem Formular zugrunde liegende XML-Dokument programmgesteuert auszuführen.

Die ausgeführte Aktion ist mit der Aktion identisch, die beim Klicken auf einen entsprechenden Menübefehl oder eine entsprechende Symbolleisten-Schaltfläche ausgeführt wird. Sie entspricht also der Aktion, bei der das Schaltflächenelement in der XSF-Datei entsprechende Werte für die Attribute xmlToEdit und action aufweist. Wie bei der Verwendung einer Schaltfläche basiert die Aktion auf der aktuellen Auswahl und wird für den ausgewählten Kontext ausgeführt (sollte die Auswahl bewirken, dass die Schaltfläche deaktiviert wird, hat die ExecuteAction-Methode keine Auswirkung).

Sie können zuerst den Auswahlkontext mithilfe der Methode SelectNodes oder SelectText festlegen und dann die ExecuteAction-Methode aufrufen, um eine Aktion auf diesem Kontext anzuwenden.

In den folgenden Situationen gibt die ExecuteAction-Methode einen Fehler zurück:

  • Der bstrAction-Parameter enthält keinen gültigen Namen für die Bearbeitungskomponente.

  • Der varXmlToEdit-Parameter entspricht keiner in der Ansicht definierten Bearbeitungskomponente.

  • Der varXmlToEdit-Parameter ist für eine bestimmte Bearbeitungsaktion erforderlich.

  • Die Bearbeitungsaktion kann auf den ausgewählten Kontext nicht angewendet werden.

  • In der folgenden Tabelle sind die Parameterkombinationen aufgeführt, die bei der ExecuteAction-Methode verwendet werden können.

Kombination

Beschreibung

"Copy"

Kopiert die ausgewählten Daten in die Zwischenablage.

"Paste"

Kopiert die Daten aus der Zwischenablage an die Position der Einfügemarke.

"Cut"

Entfernt die ausgewählten Daten und kopiert sie in die Zwischenablage.

"Delete"

Löscht die ausgewählten Daten.

"xCollection::insert", "xmlToEdit"

Fügt Daten, basierend auf dem ausgewählten Kontext, mithilfe der xCollection-Bearbeitungskomponente ein. Wenn sich die aktuelle Auswahl in einem Container der xCollection-Komponente befindet, wie durch das xmlToEdit-Element in der XSF-Datei angegeben, werden die Daten des fragmentToInsert-Elements innerhalb dieses Containers angefügt.

"xCollection::insertBefore", "xmlToEdit"

Fügt Daten mithilfe der xCollection-Bearbeitungskomponente vor dem ausgewählten Kontext ein. Wenn sich die aktuelle Auswahl innerhalb eines Elements der xCollection-Komponente befindet, wie durch das xmlToEdit-Element in der XSF-Datei angegeben, werden die Daten des fragmentToInsert-Elements vor diesem Element eingefügt.

"xCollection::insertAfter", "xmlToEdit"

Fügt Daten mithilfe der xCollection-Bearbeitungskomponente hinter dem ausgewählten Kontext ein. Wenn sich die aktuelle Auswahl innerhalb eines Elements der xCollection-Komponente befindet, wie durch das xmlToEdit-Element in der XSF-Datei angegeben, werden die Daten des fragmentToInsert-Elements hinter diesem Element eingefügt.

"xCollection::remove", "xmlToEdit"

Löscht Daten mithilfe der xCollection-Bearbeitungskomponente aus dem ausgewählten Kontext. Wenn sich die aktuelle Auswahl innerhalb eines Elements der xCollection-Komponente befindet, wie durch das xmlToEdit-Element in der XSF-Datei angegeben, wird dieses Element gelöscht.

"xCollection::removeAll", "xmlToEdit"

Löscht alle Daten im ausgewählten Kontext mithilfe der xCollection-Bearbeitungskomponente. Wenn sich die aktuelle Auswahl in einem Container der xCollection-Komponente befindet, wie durch das xmlToEdit-Element in der XSF-Datei angegeben, löscht diese Aktion alle Elemente in diesem Container.

"xReplace::replace", "xmlToEdit"

Ersetzt die Daten im ausgewählten Kontext mithilfe der xReplace-Bearbeitungskomponente. Wenn sich die aktuelle Auswahl innerhalb eines Elements der xReplace-Komponente befindet, wie durch das xmlToEdit-Element in der XSF-Datei angegeben, wird dieses Element durch die Daten des fragmentToInsert-Elements ersetzt.

"xOptional::insert", "xmlToEdit"

Fügt Daten, basierend auf dem ausgewählten Kontext, mithilfe der xOptional-Bearbeitungskomponente ein. Wenn sich die aktuelle Auswahl in einem Container der xOptional-Komponente befindet, wie durch das xmlToEdit-Element in der XSF-Datei angegeben, werden die Daten des fragmentToInsert-Elements innerhalb dieses Containers angefügt.

"xOptional::remove", "xmlToEdit"

Löscht Daten mithilfe der xOptional-Bearbeitungskomponente aus dem ausgewählten Kontext. Wenn sich die aktuelle Auswahl innerhalb eines Elements der xOptional-Komponente befindet, wie durch das xmlToEdit-Element in der XSF-Datei angegeben, wird dieses Element gelöscht.

Hinweis   In einigen Fällen kann das Aufrufen der ExecuteAction-Methode von OnClick für eine Schaltfläche in einer Ansicht einen Fehler verursachen. Dies liegt daran, dass die Schaltfläche zum ausgewählten Kontext wird, sobald auf sie geklickt wird. In diesem Fall empfiehlt es sich, eine Schaltfläche (oder eine Verknüpfung) in einem benutzerdefinierten Aufgabenbereich, auf einer benutzerdefinierten Symbolleiste oder in einem benutzerdefinierten Menü zu verwenden, um die ExecuteAction-Methode aufzurufen.

HinweisWichtig:

Auf den Member kann nur über Formulare zugegriffen werden, die in derselben Domäne wie das zurzeit geöffnete Formular ausgeführt werden, oder über Formulare, denen domänenübergreifende Berechtigungen erteilt wurden.

Beispiel

Im folgenden Beispiel wird die ExecuteAction-Methode des ViewObject-Objekts verwendet, um ausgewählte Daten zu löschen und sie in der Zwischenablage abzulegen.

thisXDocument.View.ExecuteAction("Cut", Type.Missing);

Im folgenden Beispiel wird die ExecuteAction-Methode des ViewObject-Objekts verwendet, um Daten, basierend auf dem ausgewählten Kontext, mithilfe der xCollection-Bearbeitungskomponente einzufügen:

thisXDocument.View.ExecuteAction("xCollection::insert", "group1_1");

Siehe auch

Referenz

View-Schnittstelle
View-Member
Microsoft.Office.Interop.InfoPath.SemiTrust-Namespace