Подсказка по пользовательскому управлению - PullRequest
5 голосов
/ 24 ноября 2010

Я создал пользовательский элемент управления (унаследованный от UserControl) с некоторыми элементами управления (метка, текстовое поле, ползунок) и назначил ему суперинструмент (от devComponents dotnetbar; та же проблема с обычным; проверьте изображение) в Designer.

Но подсказка не появляется. На «обычных» элементах управления это работает, поэтому проблема с пользовательским элементом управления.

Есть идеи, что случилось?

Редактировать: Вот пример: Скачать

При создании образца я думаю, что нашел ошибку. Всплывающая подсказка появляется только в том случае, если указатель мыши находится над родителем. Возможный? Если да: есть идеи как исправить?

alt text

1 Ответ

9 голосов
/ 24 ноября 2010

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

Одно упомянутое предложение (первоначально с www.msnewsgroups.net, но которого больше нет):

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

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

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