C#.NET: Как установить символы арабского или других языков в качестве ключей доступа для элемента управления текстового поля?
До сих пор я использовал свое программное обеспечение только на английском языке, теперь оно переводится на несколько языков, поэтому все ключи доступа устарели, а язык компьютера установлен не на английский, я хочу использовать свою горячую клавишу доступа ALT + F по-арабски? Как я это сделаю?
Заранее спасибо.
2 ответа
Из руководства Microsoft:
Раскладки клавиатуры меняются в зависимости от культуры / локали. Некоторые символы существуют не во всех раскладках клавиатуры. При назначении комбинаций сочетаний клавиш убедитесь, что вы можете воспроизводить их с помощью международных клавиатур, особенно если вы планируете использовать сочетания клавиш с многоязыковым интерфейсом Windows 2000 (многоязычный пользовательский интерфейс).
Поскольку в каждой культуре / локали может использоваться разная клавиатура, рассмотрите возможность использования цифр и функциональных клавиш (F4, F5 и т. Д.) Вместо букв в сочетаниях клавиш.
Хотя вам не нужно локализовать комбинации цифр и функциональных клавиш, они не настолько интуитивны для пользователя, как буквенные комбинации. Некоторые сочетания клавиш могут не работать для каждой раскладки клавиатуры в определенной культуре / локали. Например, в некоторых культурах / регионах используется более одной клавиатуры, например, в Восточной Европе и большинстве арабских стран / регионов.
Ключ доступа может быть назначен отдельно от контрольного текста.
<asp:TextBox id="TextBox"
AccessKey="A"
Text="arabic label"
runat="server"
/>
Дополнительная ссылка: https://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.webcontrol.accesskey(v=vs.110).aspx
Возможно, это не официальная "лучшая практика", но технически это сработает.