Share via


PopupMenu.ShowAsync(Point) Methode

Definition

Zeigt das Kontextmenü an den angegebenen Clientkoordinaten an.

public:
 virtual IAsyncOperation<IUICommand ^> ^ ShowAsync(Point invocationPoint) = ShowAsync;
IAsyncOperation<IUICommand> ShowAsync(Point const& invocationPoint);
public IAsyncOperation<IUICommand> ShowAsync(Point invocationPoint);
function showAsync(invocationPoint)
Public Function ShowAsync (invocationPoint As Point) As IAsyncOperation(Of IUICommand)

Parameter

invocationPoint
Point

Die Koordinaten (in DIPs) relativ zum Fenster des Finger- oder Mauszeigers des Benutzers, wenn das oncontextmenu-Ereignis ausgelöst wurde. Das Menü wird oben platziert und an diesem Punkt zentriert.

Hinweis

Für VB, C# und C++ ist dieses Fenster das CoreWindow,das dem Thread zugeordnet ist, der das Kontextmenü aufruft.

Gibt zurück

Ein IUICommand-Objekt , das den Kontextmenübefehl darstellt, der nach Abschluss des ShowAsync-Aufrufs vom Benutzer aufgerufen wurde.

Wenn kein Befehl aufgerufen wird, gibt ShowAsync NULL zurück.

Beispiele

Bevor Sie ein Kontextmenü anzeigen können, müssen Sie einen Ereignislistener für das oncontextmenu-Ereignis hinzufügen. Das Kontextmenübeispiel lauscht beispielsweise auf das Ereignis für bestimmte HTML-Elemente und ruft dann die scenario1AttachmentHandler Funktion auf.

document.getElementById("attachment").addEventListener("contextmenu", attachmentHandler, false);
menu.commands.append(new Windows.UI.Popups.UICommand("Save attachment", onSaveAttachment));

// We don't want to obscure content, so pass in the position representing the selection area.
// We registered command callbacks; no need to handle the menu completion event
menu.showAsync(pageToWinRT(e.pageX, e.pageY)).then(function (invokedCommand) {
    if (invokedCommand === null) {
        // The command is null if no command was invoked.
        WinJS.log && WinJS.log("Context menu dismissed", "sample", "status");
    }
});

Stellen Sie außerdem sicher, dass Sie überprüfen, ob ein Befehl aufgerufen wurde, und verarbeiten Sie diesen Fall entsprechend Ihrer App. Wenn der aufgerufene UICommand über eine Rückruffunktion verfügt (onSaveAttachment im Beispiel), wird die Rückruffunktion ausgeführt. Andernfalls müssen Sie möglicherweise UICommand.Id verwenden, um den aufgerufenen Befehl zu identifizieren und zu verarbeiten.

Hinweise

Im Kontextmenübeispiel sehen Sie vollständige Codebeispiele, die das Erstellen und Anpassen von Kontextmenüs veranschaulichen.

Gilt für:

Weitere Informationen