Freigeben über


VisualElement-Zugriffsschlüssel unter Windows

Zugriffsschlüssel sind Tastenkombinationen, die die Benutzerfreundlichkeit und Barrierefreiheit von Anwendungen unter Windows verbessern, indem sie Benutzern eine intuitive Möglichkeit bieten, schnell durch die sichtbare Benutzeroberfläche der Anwendung zu navigieren und mit ihr zu interagieren, und zwar über die Tastatur statt über die Berührung oder Maus. Sie sind Kombinationen aus der Alt-Taste und einer oder mehreren alphanumerischen Tasten, die in der Regel nacheinander gedrückt werden. Tastenkombinationen werden automatisch für Zugriffsschlüssel unterstützt, die ein einzelnes alphanumerisches Zeichen verwenden.

Zugriffsschlüssel sind unverankerte Badges, die neben Steuerelementen angezeigt werden, die Zugriffstasten enthalten. Jede Zugriffsschlüsselinfo enthält die alphanumerischen Tasten, die das zugeordnete Steuerelement aktivieren. Wenn ein Benutzer die Alt-TASTE drückt, werden die Zugriffsschlüsselinfos angezeigt.

Diese .NET Multiplattform App UI (.NET MAUI) Windows-Plattform-spezifische wird verwendet, um einen Zugriffsschlüssel für eine VisualElement anzugeben. Sie wird in XAML verwendet, indem die angehängte Eigenschaft VisualElement.AccessKey auf einen alphanumerischen Wert gesetzt wird und optional die angehängte Eigenschaft VisualElement.AccessKeyPlacement auf einen Wert der Aufzählung AccessKeyPlacement, die angehängte Eigenschaft VisualElement.AccessKeyHorizontalOffset auf einen double und die angehängte Eigenschaft VisualElement.AccessKeyVerticalOffset auf einen double gesetzt wird:

<TabbedPage ...
            xmlns:windows="clr-namespace:Microsoft.Maui.Controls.PlatformConfiguration.WindowsSpecific;assembly=Microsoft.Maui.Controls">
    <ContentPage Title="Page 1"
                 windows:VisualElement.AccessKey="1">
        <StackLayout>
            ...
            <Switch windows:VisualElement.AccessKey="A" />
            <Entry Placeholder="Enter text here"
                   windows:VisualElement.AccessKey="B" />
            ...
            <Button Text="Access key F, placement top with offsets"
                    Clicked="OnButtonClicked"
                    windows:VisualElement.AccessKey="F"
                    windows:VisualElement.AccessKeyPlacement="Top"
                    windows:VisualElement.AccessKeyHorizontalOffset="20"
                    windows:VisualElement.AccessKeyVerticalOffset="20" />
            ...
        </StackLayout>
    </ContentPage>
    ...
</TabbedPage>

Alternativ kann sie mit der Fluent-API von C# genutzt werden:

using Microsoft.Maui.Controls.PlatformConfiguration.WindowsSpecific;
...

var page = new ContentPage { Title = "Page 1" };
page.On<Microsoft.Maui.Controls.PlatformConfiguration.Windows>().SetAccessKey("1");

var switchView = new Switch();
switchView.On<Microsoft.Maui.Controls.PlatformConfiguration.Windows>().SetAccessKey("A");
var entry = new Entry { Placeholder = "Enter text here" };
entry.On<Microsoft.Maui.Controls.PlatformConfiguration.Windows>().SetAccessKey("B");
...

var button4 = new Button { Text = "Access key F, placement top with offsets" };
button4.Clicked += OnButtonClicked;
button4.On<Microsoft.Maui.Controls.PlatformConfiguration.Windows>()
    .SetAccessKey("F")
    .SetAccessKeyPlacement(AccessKeyPlacement.Top)
    .SetAccessKeyHorizontalOffset(20)
    .SetAccessKeyVerticalOffset(20);
...

Die VisualElement.On<Microsoft.Maui.Controls.PlatformConfiguration.Windows>-Methode legt fest, dass diese plattformspezifische Anwendung nur unter Windows läuft. Die VisualElement.SetAccessKey-Methode im Microsoft.Maui.Controls.PlatformConfiguration.WindowsSpecific-Namespace wird verwendet, um den Zugriffsschlüsselwert für VisualElement festzulegen. Die VisualElement.SetAccessKeyPlacement-Methode gibt optional die Position an, die für die Anzeige der Zugriffsschlüsselinfo verwendet werden soll, wobei die AccessKeyPlacement-Enumeration die folgenden möglichen Werte bereitstellt:

  • Auto – gibt an, dass die Platzierung der Zugriffsschlüsselinfo durch das Betriebssystem bestimmt wird.
  • Top – Gibt an, dass die Zugriffsschlüsselinfo ganz oben über dem Element VisualElement angezeigt wird.
  • Bottom – Gibt an, dass die Zugriffsschlüsselinfo ganz unten unter dem Element VisualElement angezeigt wird.
  • Right – Gibt an, dass die Zugriffsschlüsselinfo ganz rechts neben dem beschriebenen Element VisualElement angezeigt wird.
  • Left – Gibt an, dass die Zugriffsschlüsselinfo ganz links neben dem beschriebenen Element VisualElement angezeigt wird.
  • Center – gibt an, dass die Zugriffsschlüsselinfo in der Mitte des Elements VisualElement überlagert angezeigt wird.

Hinweis

In der Regel ist die Auto-Schlüsselplatzierung ausreichend, was auch die Unterstützung adaptiver Benutzeroberflächen einschließt.

Die Methoden VisualElement.SetAccessKeyHorizontalOffset und VisualElement.SetAccessKeyVerticalOffset können für eine genauere Kontrolle der Platzierung der Zugriffsschlüsselinfo verwendet werden. Das Argument der SetAccessKeyHorizontalOffset-Methode gibt an, wie weit die Zugriffsschlüsselinfo nach links oder rechts verschoben werden soll, und das Argument an die SetAccessKeyVerticalOffset-Methode gibt an, wie weit die Zugriffsschlüsselinfo nach oben oder unten verschoben werden soll.

Hinweis

Zugriffsschlüsselinfo-Versatz kann nicht festgelegt werden, wenn die Platzierung des Zugriffsschlüssels auf Auto festgelegt ist.

Darüber hinaus können die Methoden GetAccessKey, GetAccessKeyPlacement, GetAccessKeyHorizontalOffset und GetAccessKeyVerticalOffset verwendet werden, um einen Zugriffsschlüsselwert und seine Platzierung abzurufen.

Das Ergebnis ist, dass Zugriffsschlüsselinfos neben allen VisualElement-Instanzen angezeigt werden können, die Zugriffsschlüssel definieren, indem Sie die Alt-Taste drücken:

VisualElement access keys platform-specific.

Wenn Benutzende einen Zugriffsschlüssel aktivieren, indem sie die Alt-Taste gefolgt vom Zugriffsschlüssel drücken, wird die Standardaktion für VisualElement ausgeführt. Wenn Benutzende beispielsweise den Zugriffsschlüssel auf einer Switch aktivieren, wird Switch umgeschaltet. Wenn Benutzende den Zugriffsschlüssel auf einem Entry aktivieren, erhält der Entry Fokus. Wenn Benutzende den Zugriffsschlüssel auf einer Button betätigen, wird der Event-Handler für das Ereignis Clicked ausgeführt.

Weitere Informationen zu Zugriffsschlüsseln finden Sie unter Zugriffsschlüssel.