Введіть символ "&" у текст Label у Windows Forms?


103

Як можна вводити спеціальних символів Labelу "C" (Форми Windows)?

Якщо ви спробуєте написати "&" на етикетці, ви отримаєте такий собі підкреслення.

То що таке C # еквівалент "&"? ("\ &" очевидно не працює).

Відповіді:


202

Два способи:

  • Уникнути його за допомогою іншого ampersand ( &&).

  • Встановіть UseMnemonicдля цієї мітки до false. Це призводить до того, що всі розклади в тексті потрібно сприймати буквально, тому вам не потрібно подвоювати жоден з них. Однак ви втратите підкреслені та ключові функції доступу.

    Ви можете встановити значення або в дизайнері, або в коді:

    myLabel.UseMnemonic = false;
    myLabel.Text = "Text&Text";

1
Я вже знав (і використовував) &&шаблон, але UseMnemonicя ніколи раніше не бачив. Тож +1 для цього нового просвітлення.
Олівер

2
Це канонічна відповідь. Дублікати цього питання включають stackoverflow.com/questions/4324310 , stackoverflow.com/questions/7737532 , stackoverflow.com/questions/9100607 та stackoverflow.com/questions/4324310 .
Пітер Мортенсен

1
Оскільки у ToolStripStatusLabelмене немає цього властивості, якщо я хочу використовувати це на StatusStrip, я змушений уникнути цього за допомогою іншого амперсанда?
AdamMc331

2
@ McAdam331: Я так вірю.
BoltClock

1
@BoltClock спасибі Це було досить просто, я просто використовував String.Replace("&", "&&")кожен раз, коли я встановлював текст, щоб я міг уникнути амперсанда, не мутуючи мій предмет і викручуючи, як він відображається в іншому місці.
AdamMc331



0

Я не знаю, як використовувати "&" в дизайнері, але в коді ви можете використовувати "&&" для показу одного "&"


5
"&&" чудово працює в дизайнері. Просто введіть його там, де ви змінюєте Текст.
Спектралюмп

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.