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 double
a 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 okrajemVisualElement
horního okrajeBottom
– označuje, že se popis přístupového klíče zobrazí pod dolním okrajemVisualElement
.Right
– označuje, že se popis přístupového klíče zobrazí napravo od pravéhoVisualElement
okraje .Left
– označuje, že se popis přístupového klíče zobrazí vlevo od levéhoVisualElement
okraje .Center
– označuje, že se popis přístupového klíče zobrazí nad středemVisualElement
.
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í Auto
umístění přístupového klíče .
Kromě toho lze použít , GetAccessKey
GetAccessKeyPlacement
GetAccessKeyHorizontalOffset
, 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:
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čiSwitch
Switch
. 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.