System.Windows.Forms.ErrorProvider - отображение символа «&» - PullRequest
1 голос
/ 16 сентября 2011

Я пытаюсь установить сообщение об ошибке, которое содержит амперсанд через ErrorProvider.Первая попытка прошла так:

errorProvider.SetError(someControl, "You have not accepted the Terms & Conditions");

Это не отображает символ амперсанда.Гугл предложил следующее:

errorProvider.SetError(someControl, "You have not accepted the Terms &&& Conditions");

Это работает (то есть отображает один амперсанд), но я хотел бы понять , почему это работает.Любые идеи?

EDIT : для элемента управления System.Windows.Forms.Label есть свойство с именем: UseMnemonic, которое может быть установлено в False.Есть ли в ErrorProvider что-нибудь подобное?

1 Ответ

3 голосов
/ 16 сентября 2011

«&» - это специальный символ в формах, который предназначен для подчеркивания следующего символа. Так что если вы используете его как:

myButton.Text = "&Close";

это подчеркнет символ 'C', который также станет горячей клавишей. Если вы не хотите, чтобы это произошло, в тексте используйте двойной амперсанд, например '&&'.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...