This article is currently in the process of being translated into Romanian (~93% done).
Access Keys
Conceptul de taste de acces, denumite uneori Chei de Acces, uneori denumite Taste de Accelerare sau Acceleratoare de Tastatură, vă permite să ajungeți la un control specific în interiorul unei ferestre, ținând apăsată tasta Alt și apoi apăsând altă tastă de pe tastatură. Aceasta îmbunătățește gradul de utilizare a ferestrelor dvs., deoarece permite utilizatorului să utilizeze tastatura pentru a naviga în fereastră, în loc să utilizeze mouse-ul.
Defining Access Keys
Definirea cheilor de acces pentru controlul vostru WPF este foarte ușoară, dar metoda ar putea să te surprindă puțin. În mod normal, ar exista o proprietate pentru acest lucru, dar nu și pentru cheile de acces. În schimb, definiți cheia de acces prin prefixarea literei cu o subliniere în proprietatea Text / conținut a controlului. De exemplu, astfel:
<Button Content="_New"></Button>
Observați sublinierea (_) chiar înainte de caracterul N - aceasta va transforma tasta N în cheia de acces desemnată pentru acest control de tip buton. În mod implicit, aspectul controalelor dvs. nu se schimbă, după cum puteți vedea din acest exemplu în care am definit Chei de Acces pentru toate butoanele:
However, as soon as you press the Alt key on your Keyboard, the available Access Keys are highlighted by underlining them:
În timp ce țineți apăsată tasta Alt , puteți apăsa acum una din Tastele de Acces (de exemplu, N, O sau S) pentru a activa butonul respectiv. Acesta va reacționa ca și cum ar fi fost apăsat cu mouse-ul.
Cheile de Acces sunt bune pentru elementele unice într-undialog / fereastră, dar sunt și mai utile în Meniurile Windows tradiționale, de obicei, trebuie să faceți clic pe o ierarhie a elementelor de meniu înainte de a ajunge la cel de care aveți nevoie. Iată un exemplu din Visual Studio:
În acest caz, în loc să trebuiască să navighez prin meniu cu mai multe mișcări și clicuri de mouse când vreau să încep un nou proiect, pot ține apăsată tasta Altși apoi apasă F (for File), then N (pentru New ) și apoiP (for Proiect (pentru proiect). Sigur, acest lucru ar fi putut fi realizat și cu comanda rapidă de la tastatură (Ctrl + Shift + N), dar această scurtătură nu este vizibilă până când nu ajungeți la ultimul nivel al ierarhiei meniului, deci dacă nu l-ați memorat deja, ar putea fi mai ușor pentru a utiliza tastele de acces, deoarece acestea sunt evidențiate vizual imediat ce apăsați tasta Alt.
Care caractere ar trebui folosite ca Taste de Acces?
S-ar putea să fiți tentat să folosiți oricare dintre caracterele găsite în textul / conținutul controlului, dar există, de fapt, linii directoare pentru alegerea caracterului potrivit. Cea mai importantă regulă este, desigur, să alegeți un caracter care nu este deja folosit de un alt control, dar în plus, ar trebui să utilizați următoarele linii directoare:
- Utilizați primul caracter al primului cuvânt.
- Dacă acest lucru nu este posibil, utilizați primul caracter al celui de-al doilea sau al treilea cuvânt (de exemplu, A din Salvare ca)
- Dacă acest lucru nu este posibil, utilizați al doilea caracter al primului cuvânt (de ex. P în Open)
- Dacă acest lucru nu este posibil, utilizați cel de-al doilea caracter al celui de-al doilea sau al treilea cuvânt (de exemplu, l din Save All)
- În general, poate doriți să evitați caracterele înguste cai și l și să mergeți pentru caracterele mai mari cum ar fi m, s, w etc.
Legând împreună două comenzi
În exemplele pe care le-am văzut până acum, am reușit să definim Cheia de Acces direct pe controlul lacare dorim să ajungem. Dar există cel puțin un exemplu în care acest lucru nu este posibil în mod direct: când aveți un control de intrare, de ex. un TextBox, textul care indică scopul său nu există în cadrul controlului TextBox real. În schimb, de obicei, utilizați un al doilea control pentru a indica, cu text, scopul controlului TextBox. Acesta ar fi, de obicei, un control de tip Label.
Deci, în acest exemplu, controlul de tip etichetă va conține textul descriptiv și, prin urmare, și Tasta de Acces, dar controlul căruia doriți să-i acordați atenție ar fi controlul TextBox. Nu există nicio problemă - putem folosi proprietatea Target a etichetei pentru a o lega împreună cu TextBox (sau orice alt control), cum ar fi:
<StackPanel Margin="20">
<Label Content="_First name:" Target="{Binding ElementName=txtFirstName}" />
<TextBox Name="txtFirstName" />
<Label Content="_Last name:" Target="{Binding ElementName=txtLastName}" />
<TextBox Name="txtLastName" />
<Button Content="_Save" Margin="20"></Button>
</StackPanel>
Observați cum este specificată tasta de acces pentru controalele Label și apoi legată la controlul TextBox relevant utilizând proprietatea Destinație , unde folosim ElementName pe baza Binding pentru a face lucrul real. Acum putem accesa cele două controale TextBox folosind Alt + F și Alt + L, și Butonul cu Alt + S. Iată cum arată:
Sumar
Prin utilizarea Cheilor de Acces în ferestrele / ferestrele de dialog, puteți ușura navigarea folosind numai tastatura lor. Acest lucru este deosebit de popular printre utilizatorii cunoscători, care vor folosi tastatura în defavoarea mouse-ului cât mai mult posibil. Ar trebui să utilizați întotdeauna taste de acces, în special pentru meniurile dvs.