TOC

This article has been localized into Catalan by the community.

Conceptes sobre controls:

Claus d'accés

El concepte de Tecles d'Accés, a vegades referides com a Combinacions de Tecles o Dreceres de Teclat, et permeten seleccionar un control específic dins d'una finestra pressionant la tecla Alt juntament amb una altra tecla del teclat. Això millora la usabilitat de les teves finestres, perquè permet a l'usuari usar el seu teclat per a navegar per la finestra, en lloc d'haver d'usar el ratolí.

Definir tecles d'accés

Definir tecles d'accés per als teus controls WPF és molt fàcil, però la metodologia et pot sorprendre una mica. Normalment, hi hauria una propietat per a això, però no per a les Tecles d'Accés. En el seu lloc, defineixes la Tecla d'Accés prefixant la lletra corresponent amb una barra baixa en la propietat Text/Content del control. Per exemple, d'aquesta manera:

<Button Content="_New"></Button>

Fixa't en la barra baixa(_) just abans de la lletra N - això convertirà la tecla N en la Tecla d'Accés designada per a aquest control Button. Per defecte, l'aparença dels teus controls no canvia, com pots veure en aquest exemple on he definit una Tecla d'Accés per a tots els botons:

De totes maneres, com a pressiones la tecla Alt en el teu teclat, les Tecles d'Accés disponibles es ressaltaran amb un subratllat:

Mentre mantinguis pressionada la tecla Alt, pots pressionar simultàniament una de les Tecles d'Accés(p.e. N, O o S) per a activar el botó corresponent. Reaccionarà com si ho haguessis premut amb el ratolí.

Les Tecles d'Accés estan bé per a elements individuals en un diàleg/finestra, però són fins i tot més útils en l'els Menús de les Finestres, on habitualment necessitaràs obrir-te camí a través de la jeraquía d'opcions fins a arribar a la que necessites. Aqui tenim un exemple de Visual Studio:

En aquest cas, en lloc d'haver de navegar a través del menú amb diversos moviments i pulsacions de ratolí quan vull començar un Projecte nou, puc pressionar la tecla Alt i llavors F (per a Arxiu), després N (per a Nou i a continuació P (per a Projecte. Segurament, això es podria aconseguir també amb la drecera de teclat (Ctrl+Majúscules+N), però aquest accés no és visible fins que no arribis a l'últim nivell de la jerarquia del menú, asi que tret que ja ho hagis memoritzat, podria ser més fàcil usar les Tecles d'Accés, ja que estan ressaltades des del moment en què pressiones la tecla Alt.

Quins caràcters haurien d'usar-se com a Tecles d'Accés?

Podries sentir-te temptat d'usar qualsevol dels caràcters en text/contingut del control, però existeixen de fet convencions per a triar el caràcter més adequat. La regla més important per descomptat és triar un caràcter que no estigui actualment en ús en un altre control, però a més d'això, hauries d'usar les següents regles:

  • Empra la primera lletra de la primera paraula
  • Si no és possible, usa el primer caràcter de la segona o tercera paraula(p.e la C a Guardar Com)
  • Si l'anterior no és possible, usa el segon caràcter de la primera paraula(p.e B a Obrir)
  • Si això no és possible, usa el segon caràcter de la segona o la tercera paraula(p.e la T a Guardar Tots)
  • En general, hauries d'evitar els caràcters estrets com la i o la l, i triar els caràcters amples com a m, s, w etc.

Aglomerar dos controls

En els exemples vists fins ara, hem estat capaços de definir Tecles d'Accés directament en el control que volem aconseguir. Però hi ha almenys un exemple on això no és directament possible: Quan tens un contol d'entrada de dades, p.e un TextBox, el text que indica el seu propòsit no existeix en el control TextBox com a tal. En el seu lloc, hauries d'usar un segon control per a indicar, amb text, el propòsit del control TextBox. Normalment aquest seria un control Label.

Així, en aquest exemple, el control Label contindria el text descriptiu, i per descomptat també la Tecla d'Accés, però el control cap al qual vols dirigir l'atenció seria el TextBox. Cap problema - podem usar la propietat Target del Label per a enllaçar amb el TextBox(o qualsevol altre control), d'aquesta manera:

<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>

Fixa't com la Tecla d'Accés està especificada per als controls Label i després enllaçada als controls TextBox rellevants usant la propietat Target, on utilitzem un Binding basat en ElementName per a fer el treball. Ara podem accedir als dos controls TextBox usant Alt+F i Alt+L, i al botó amb Alt+S. Així és com quedaria:

Resum

Usant les Tecles d'Accés en les teves finestres/diàlegs, estàs fent molts més fàcil a la gent el navegar usant només els seus teclats. Això és especialment popular entre els usuaris avançats, que usaran el teclat en favor del ratolí tant com sigui possible. Sempre hauries d'usar les Tecles d'Accés, especialment per als teus menús.


This article has been fully translated into the following languages: Is your preferred language not on the list? Click here to help us translate this article into your language!