Sdílet prostřednictvím


Přístupové klíče pro VisualElement ve Windows

Přístupové klávesy jsou klávesové zkratky, které zlepšují použitelnost a přístupnost aplikací na Univerzální platforma Windows (UPW) tím, že uživatelům poskytují intuitivní způsob, jak rychle procházet a pracovat s viditelným uživatelským rozhraním aplikace prostřednictvím klávesnice místo dotykového ovládání nebo myši. Jedná se o kombinace kláves Alt a jedné nebo více alfanumerických kláves, obvykle stisknuté postupně. Klávesové zkratky se automaticky podporují pro přístupové klávesy, které používají jeden alfanumerický znak.

Tipy pro přístupové klávesy jsou plovoucí odznáčky zobrazené vedle ovládacích prvků, které obsahují přístupové klíče. Každý tip přístupového klíče obsahuje alfanumerické klávesy, které aktivují přidružený ovládací prvek. Když uživatel stiskne klávesu Alt, zobrazí se tipy pro přístupové klávesy.

Tato platforma UPW se používá k určení přístupového klíče pro .VisualElement Využívá se v XAML nastavením VisualElement.AccessKey připojené vlastnosti na alfanumerickou hodnotu a volitelně nastavením VisualElement.AccessKeyPlacement připojené vlastnosti na hodnotu AccessKeyPlacement výčtu, VisualElement.AccessKeyHorizontalOffset připojené vlastnosti doublea VisualElement.AccessKeyVerticalOffset připojené vlastnosti k double:

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

Alternativně ho můžete využívat z jazyka C# pomocí rozhraní FLUENT API:

using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.WindowsSpecific;
...

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

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

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

Metoda VisualElement.On<Windows> určuje, že tato konkrétní platforma se bude spouštět pouze na Univerzální platforma Windows. Metoda VisualElement.SetAccessKey v Xamarin.Forms.PlatformConfiguration.WindowsSpecific oboru názvů slouží k nastavení hodnoty přístupového klíče pro VisualElement. Volitelně VisualElement.SetAccessKeyPlacement určuje pozici, která se má použít pro zobrazení tipu přístupového klíče, s AccessKeyPlacement výčtem, který poskytuje následující možné hodnoty:

  • Auto – označuje, že umístění tipu přístupového klíče bude určeno operačním systémem.
  • Top – označuje, že se nad horním okrajem VisualElementhorního okraje
  • Bottom – označuje, že se popis přístupového klíče zobrazí pod dolním okrajem VisualElement.
  • Right – označuje, že se popis přístupového klíče zobrazí napravo od pravého VisualElementokraje .
  • Left – označuje, že se popis přístupového klíče zobrazí vlevo od levého VisualElementokraje .
  • Center – označuje, že se popis přístupového klíče zobrazí nad středem VisualElement.

Poznámka:

Umístění tipu Auto klíče je obvykle dostatečné, což zahrnuje podporu adaptivních uživatelských rozhraní.

Metody VisualElement.SetAccessKeyHorizontalOffset a VisualElement.SetAccessKeyVerticalOffset metody lze použít k podrobnějšímu řízení umístění tipu přístupového klíče. Argument metody SetAccessKeyHorizontalOffset označuje, jak daleko přesunout přístupový klíč doleva nebo doprava, a argument metody SetAccessKeyVerticalOffset označuje, jak daleko přesunout přístupový klíč nahoru nebo dolů.

Poznámka:

Posuny tipu přístupového klíče nelze nastavit při nastavení Autoumístění přístupového klíče .

Kromě toho lze použít , GetAccessKeyGetAccessKeyPlacementGetAccessKeyHorizontalOffset, a GetAccessKeyVerticalOffset metody k načtení hodnoty přístupového klíče a jeho umístění.

Výsledkem je, že se tipy pro přístupové klávesy dají zobrazit vedle všech VisualElement instancí, které definují přístupové klávesy, stisknutím klávesy Alt:

Přístupové klíče pro VisualElement specifické pro platformu

Když uživatel aktivuje přístupovou klávesu, stisknete klávesu Alt a potom přístupový klíč, spustí se výchozí akce pro tuto VisualElement akci. Například když uživatel aktivuje přístupový klíč na přepínačiSwitchSwitch. Když uživatel aktivuje přístupový klíč na objektu Entry, Entry získá fokus. Když uživatel aktivuje přístupový klíč na Button, obslužná rutina události pro Clicked událost se spustí.

Upozorňující

Když se ve výchozím nastavení zobrazí modální dialogové okno, dají se aktivovat všechny přístupové klávesy definované na stránce za dialogem. Vlastní logiku ale můžete zapsat tak, aby v tomto scénáři zakázala přístupové klíče. Toho lze dosáhnout zpracováním Dispatcher.AcceleratorKeyActivated události ve MainPage třídě projektu UPW a v obslužné rutině události nastavení Handled vlastnosti argumentů události na true při zobrazení modálního dialogového okna.

Další informace o přístupových klíčích najdete v tématu Přístupové klíče.