Kunci Akses VisualElement di Windows
Tombol akses adalah pintasan keyboard yang meningkatkan kegunaan dan aksesibilitas aplikasi di Platform Windows Universal (UWP) dengan menyediakan cara intuitif bagi pengguna untuk dengan cepat menavigasi dan berinteraksi dengan UI aplikasi yang terlihat melalui keyboard alih-alih melalui sentuhan atau mouse. Mereka adalah kombinasi dari tombol Alt dan satu atau beberapa tombol alfanumerik, biasanya ditekan secara berurutan. Pintasan keyboard secara otomatis didukung untuk tombol akses yang menggunakan satu karakter alfanumerik.
Tips kunci akses adalah lencana mengambang yang ditampilkan di samping kontrol yang menyertakan kunci akses. Setiap tip kunci akses berisi kunci alfanumerik yang mengaktifkan kontrol terkait. Saat pengguna menekan tombol Alt, tips tombol akses ditampilkan.
Platform UWP ini khusus digunakan untuk menentukan kunci akses untuk VisualElement
. Ini digunakan dalam XAML dengan mengatur VisualElement.AccessKey
properti terlampir ke nilai alfanumerik, dan dengan secara opsional mengatur VisualElement.AccessKeyPlacement
properti terlampir ke nilai AccessKeyPlacement
enumerasi, VisualElement.AccessKeyHorizontalOffset
properti terlampir ke double
, dan VisualElement.AccessKeyVerticalOffset
properti terlampir ke 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>
Atau, dapat dikonsumsi dari C# menggunakan API fasih:
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);
...
Metode VisualElement.On<Windows>
menentukan bahwa khusus platform ini hanya akan berjalan pada Platform Windows Universal. Metode VisualElement.SetAccessKey
, di Xamarin.Forms.PlatformConfiguration.WindowsSpecific
namespace layanan, digunakan untuk mengatur nilai kunci akses untuk VisualElement
. Metode ini VisualElement.SetAccessKeyPlacement
, secara opsional menentukan posisi yang akan digunakan untuk menampilkan tip kunci akses, dengan AccessKeyPlacement
enumerasi yang menyediakan kemungkinan nilai berikut:
Auto
– menunjukkan bahwa penempatan tip kunci akses akan ditentukan oleh sistem operasi.Top
– menunjukkan bahwa tip kunci akses akan muncul di atas tepiVisualElement
atas .Bottom
– menunjukkan bahwa tip kunci akses akan muncul di bawah tepiVisualElement
bawah .Right
– menunjukkan bahwa ujung kunci akses akan muncul di sebelah kanan tepiVisualElement
kanan .Left
– menunjukkan bahwa tip kunci akses akan muncul di sebelah kiri tepiVisualElement
kiri .Center
– menunjukkan bahwa tip kunci akses akan muncul dilapisi di bagianVisualElement
tengah .
Catatan
Biasanya, Auto
penempatan tip kunci cukup, yang mencakup dukungan untuk antarmuka pengguna adaptif.
Metode VisualElement.SetAccessKeyHorizontalOffset
dan VisualElement.SetAccessKeyVerticalOffset
dapat digunakan untuk kontrol yang lebih terperinci dari lokasi tip kunci akses. Argumen ke SetAccessKeyHorizontalOffset
metode menunjukkan seberapa jauh untuk memindahkan tip kunci akses ke kiri atau kanan, dan argumen ke SetAccessKeyVerticalOffset
metode menunjukkan seberapa jauh untuk memindahkan tip kunci akses ke atas atau ke bawah.
Catatan
Offset tip kunci akses tidak dapat diatur saat penempatan kunci akses diatur Auto
.
Selain itu, GetAccessKey
metode , GetAccessKeyPlacement
, GetAccessKeyHorizontalOffset
, dan GetAccessKeyVerticalOffset
dapat digunakan untuk mengambil nilai kunci akses dan lokasinya.
Hasilnya adalah bahwa tips kunci akses dapat ditampilkan di samping instans apa pun VisualElement
yang menentukan kunci akses, dengan menekan tombol Alt:
Saat pengguna mengaktifkan tombol akses, dengan menekan tombol Alt diikuti oleh kunci akses, tindakan default untuk VisualElement
akan dijalankan. Misalnya, saat pengguna mengaktifkan kunci akses pada Switch
, tombol Switch
akan diaktifkan. Saat pengguna mengaktifkan kunci akses pada Entry
, mendapatkan Entry
fokus. Saat pengguna mengaktifkan kunci akses pada Button
, penanganan aktivitas untuk Clicked
peristiwa dijalankan.
Peringatan
Secara default, ketika dialog modal ditampilkan kunci akses apa pun yang ditentukan di halaman di belakang dialog masih dapat diaktifkan. Namun, logika kustom dapat ditulis untuk menonaktifkan kunci akses dalam skenario ini. Ini dapat dicapai dengan menangani Dispatcher.AcceleratorKeyActivated
peristiwa di MainPage
kelas proyek UWP Anda, dan di penanganan aktivitas mengatur Handled
properti argumen peristiwa ke true
ketika dialog modal ditampilkan.
Untuk informasi selengkapnya tentang kunci akses, lihat Kunci akses.