Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Menu i menu kontekstowe są podobne do ich wyglądu i tego, co mogą zawierać. Oba te elementy wyświetlają uporządkowaną listę poleceń lub opcji i oszczędzają miejsce, ukrywając się, dopóki użytkownik ich nie potrzebuje. Istnieją jednak różnice między nimi, takie jak to, czego należy użyć do ich utworzenia i sposobu uzyskiwania do nich dostępu przez użytkownika.
Czy jest to właściwa kontrola?
Menu i menu kontekstowe służą do organizowania poleceń i oszczędzania miejsca, ukrywając te polecenia, dopóki użytkownik ich nie potrzebuje. Aby wyświetlić dowolną zawartość, taką jak powiadomienie lub żądanie potwierdzenia, użyj okna dialogowego lub okna wysuwanego.
Jeśli określone polecenie będzie często używane i masz dostępne miejsce, rozważ umieszczenie go bezpośrednio w swoim elememencie, aby użytkownicy nie musieli przechodzić przez menu, aby przejść do niego.
Kiedy należy użyć menu lub menu kontekstowego?
- Jeśli element hosta jest przyciskiem lub innym elementem polecenia, którego główną rolą jest przedstawienie dodatkowych poleceń, użyj menu.
- Jeśli element hosta jest innym typem elementu, który ma inny cel podstawowy (taki jak prezentowanie tekstu lub obrazu), użyj menu kontekstowego.
Jeśli chcesz dodać polecenia (takie jak wycinanie, kopiowanie i wklejanie) do elementu tekstowego lub obrazu, użyj menu kontekstowego zamiast menu. W tym scenariuszu główną rolą elementu tekstowego jest prezentowanie i edytowanie tekstu; dodatkowe polecenia (takie jak wycinanie, kopiowanie i wklejanie) są pomocnicze i należą do menu kontekstowego.
Menu kontekstowe
Menu kontekstowe mają następujące cechy:
- Są dołączone do jednego elementu i wyświetlają pomocnicze polecenia.
- Są wywoływane przez kliknięcie prawym przyciskiem myszy (lub równoważne działanie, takie jak naciśnięcie i przytrzymanie palcem).
- Są skojarzone z elementem za pośrednictwem jego właściwości ContextFlyout.
W przypadkach, gdy menu kontekstowe będzie zawierać typowe komendy (takie jak Kopiuj, Wytnij, Wklej, Usuń, Udostępnij lub komendy dotyczące zaznaczania tekstu), użyj rozwijanego menu paska poleceń i pogrupuj te typowe komendy jako główne komendy, aby były wyświetlane jako pojedynczy, poziomy wiersz w menu kontekstowym.
W przypadkach, gdy menu kontekstowe nie będzie zawierać typowych poleceń, menu wysuwane paska poleceń lub menu wysuwane mogą służyć do wyświetlania menu kontekstowego. Zalecamy użycie polecenia CommandBarFlyout, ponieważ zapewnia ona więcej funkcji niż MenuFlyout, a w razie potrzeby może osiągnąć to samo zachowanie i wygląd menuFlyout przy użyciu tylko poleceń pomocniczych.
Menu
Menu mają następujące cechy:
- Mieć pojedynczy punkt wejścia (menu Plik w górnej części ekranu, na przykład), który jest zawsze wyświetlany.
- Zazwyczaj są dołączone do przycisku lub elementu menu nadrzędnego.
- Są wywoływane przez kliknięcie lewym przyciskiem myszy (lub równoważne działanie, takie jak naciśnięcie palcem).
- Są skojarzone z elementem za pośrednictwem jego właściwości wysuwanych lub FlyoutBase.AttachedFlyout lub pogrupowane na pasku menu w górnej części okna aplikacji.
Gdy użytkownik wywołuje element polecenia (taki jak przycisk), którego głównym zadaniem jest przedstawienie dodatkowych poleceń, użyj wysuwanego menu , aby umieścić jedno menu najwyższego poziomu, które ma być wyświetlane jako wysuwane menu dołączone do elementu interfejsu użytkownika. Każdy "MenuFlyout" może mieścić elementy menu i podmenu. W przypadku aplikacji, które mogą potrzebować większej liczby organizacji lub grupowania, użyj paska menu jako szybki i prosty sposób, aby wyświetlić zestaw wielu menu najwyższego poziomu w wierszu poziomym.
UwP i WinUI 2
Ważny
Informacje i przykłady w tym artykule są zoptymalizowane dla aplikacji korzystających z Windows App SDK i WinUI 3, ale są ogólnie stosowane również w aplikacjach UWP korzystających z WinUI 2. Zobacz dokumentację interfejsu API platformy UWP, aby uzyskać informacje i przykłady dotyczące platformy.
Ta sekcja zawiera informacje potrzebne do używania kontrolki w aplikacji platformy UWP lub WinUI 2.
Kontrolki CommandBarFlyout i MenuBar dla aplikacji platformy UWP są uwzględniane w ramach interfejsu WinUI 2. Aby uzyskać więcej informacji, w tym instrukcje dotyczące instalacji, zobacz WinUI 2. Interfejsy API dla tych kontrolek istnieją zarówno w przestrzeniach nazw Windows.UI.Xaml.Controls, oraz Microsoft.UI.Xaml.Controls.
- interfejsy API platformy UWP:klasa AppBarButton, klasa AppBarSeparator, klasa AppBarToggleButton, klasa CommandBarFlyout, właściwość ContextFlyout, właściwość FlyoutBase.AttachedFlyout, klasa MenuBar, klasa MenuFlyout, klasa TextCommandBarFlyout
- Interfejsy API WinUI 2:CommandBarFlyout, klasa, klasa MenuBar, TextCommandBarFlyout,
- Otwórz aplikację Galeria WinUI 2 i zobacz MenuBar lub CommandBarFlyout w działaniu. Aplikacja z galerii WinUI 2 zawiera interaktywne przykłady większości kontrolek, funkcji i funkcji winUI 2. Pobierz aplikację ze sklepu Microsoft Store lub pobierz kod źródłowy w witrynie GitHub.
Zalecamy użycie najnowszych WinUI 2, aby uzyskać najbardziej aktualne style i szablony dla wszystkich kontrolek. Interfejs WinUI 2.2 lub nowszy zawiera nowy szablon dla tych kontrolek korzystających z zaokrąglonych narożników. Aby uzyskać więcej informacji, zobacz Promień narożnika.
Aby użyć kodu w tym artykule z WinUI 2, użyj aliasu w XAML (używamy muxc
) do reprezentowania interfejsów API biblioteki interfejsu użytkownika systemu Windows, które są uwzględnione w projekcie. Aby uzyskać więcej informacji, zobacz Rozpoczynanie pracy z interfejsem WinUI 2.
xmlns:muxc="using:Microsoft.UI.Xaml.Controls"
<muxc:CommandBarFlyout />
<muxc:MenuBar />
Powiązane artykuły
- podstawy projektowania poleceń dla aplikacji systemu Windows
- Kontekstowe zarządzanie kolekcjami i listami
- menu wysuwane i pasek menu
- paska poleceń
- pasek poleceń