getContentWindow (Client-API-Referenz)

Gibt das Inhaltsfenster zurück, das ein IFRAME oder eine Webressource darstellt.

Hinweis

Diese Methode wird nur für die einheitliche Oberfläche unterstützt.

Unterstützter Steuerelementtypen

iframe, Webressource

Syntax

formContext.getControl(arg).getContentWindow().then(successCallback, errorCallback);

Parameter

Name des Dataflows Type Erforderlich Beschreibung
successCallback Function Nr. Eine Funktion zum Aufrufen, wenn der Vorgang erfolgreich ausgeführt wird. Eine Inhaltsfensterinstanz, die den IFRAME oder die Webressource darstellt, wird an die Funktion übergeben.
errorCallback Function Nr. Eine Funktion zum Aufrufen, wenn der Vorgang fehlschlug.

Rückgabewert

Gibt bei Erfolg ein Versprechen zurück, die eine Inhaltsfensterinstanz enthält, die einen IFRAME oder eine Webressource darstellt.

Beispiel

Das folgende Beispiel zeigt, wie Sie diese Methode mit einer HTML-Webressource (new_myWebResource.htm) verwenden können.

Fügen Sie zunächst den folgenden Code in Ihre HTML-Webressource ein:

// This script should be in the HTML web resource.
// No usage of Xrm or formContext should happen until this method is called.
function setClientApiContext(xrm, formContext) {
    // Optionally set Xrm and formContext as global variables on the page.
    window.Xrm = xrm;
    window._formContext = formContext;
     
    // Add script logic here that uses xrm or the formContext.
}

Fügen Sie als nächstes den folgenden Code in den OnLoad-Eventhandler des Formulars ein:

// This should be in a script loaded on the form. 
// form_onload is a handler for the form onload event.
function form_onload(executionContext) {
    var formContext = executionContext.getFormContext();
    var wrControl = formContext.getControl("WebResource_CustomName");
    if (wrControl) {
        wrControl.getContentWindow().then(
            function (contentWindow) {
                contentWindow.setClientApiContext(Xrm, formContext);
            }
        )
    }
}

Einem TabStateChange-Ereignishandler sollte ein ähnlicher Initialisierungscode hinzugefügt werden, wenn eine solche Initialisierung erforderlich ist. Jeglicher Initialisierungscode sollte idempotent sein, wenn er wiederverwendet wird. Aus Leistungsgründen kann das Formular das Steuerelement bei der Registerkartennavigation zerstören und neu initialisieren.

Hinweis

Können Sie uns Ihre Präferenzen für die Dokumentationssprache mitteilen? Nehmen Sie an einer kurzen Umfrage teil. (Beachten Sie, dass diese Umfrage auf Englisch ist.)

Die Umfrage dauert etwa sieben Minuten. Es werden keine personenbezogenen Daten erhoben. (Datenschutzbestimmungen).