Отображение подсказок по отключенным пунктам меню или альтернативным решениям в .NET - PullRequest
2 голосов
/ 25 мая 2011

Я пытаюсь отобразить всплывающую подсказку на отключенном ToolStripMenuItem, чтобы проинформировать пользователя о том, почему он отключен.

Сначала я подумал (так как события не запускаются при отключенных элементах управления), чтобы забратьсобытие MouseMove вместо родительского MenuStrip и отображение всплывающей подсказки, если она находится над отключенным элементом управления.Но событие, по-видимому, не распространяется на родительский MenuStrip, как ожидалось.Это как обычно работает правильно?Например, отключенные события текстового поля будут перемещаться вверх на родительскую панель?

PS.Я начинаю думать, что это плохая идея дизайна пользовательского интерфейса в любом случае?Какой лучший способ сделать это?

Ответы [ 3 ]

1 голос
/ 26 мая 2011

Tricky.Я бы также согласился с тем, что невозможно сообщить пользователям (большинство пользователей в наши дни рады, что иногда опции отключаются из-за контекста / выбранных данных и т. Д.)Или же вы должны включить эти элементы и отображать всплывающие окна или другие предупреждающие сообщения, когда пользователи пытаются вызвать их.

0 голосов
/ 29 января 2016

Вы должны установить ShowItemToolTips = true на содержащем MenuStrip.Всплывающая подсказка будет отображаться, даже если ToolStripMenuItem отключена (но не будет отображаться, если отключена вся MenuStrip).

Это старый вопрос, поэтому функциональность могла измениться, но OP, вероятно, сделалЯ сделал ту же ошибку - моя всплывающая подсказка не показывалась, поэтому я ошибочно предположил, что это потому, что ToolStripMenuItem был отключен.

Просто хотел указать это для дальнейшего использования.

0 голосов
/ 26 января 2012

Я не буду вдаваться в то, что это плохой дизайн пользовательского интерфейса или нет, чтобы отображать всплывающие подсказки с подробным описанием причины, по которой что-то отключено.

Однако я определился, как это сделать для отключенных кнопок несколько лет назад.,Я знаю, что это не ваша проблема, но достаточно похоже, что написанное мной сообщение в блоге может вам пригодиться.

...