C# Скрытие всплывающей подсказки при перемещении мыши и ее повторное отображение при наведении мыши, не выходя из элемента управления. - PullRequest
1 голос
/ 10 марта 2020

У меня есть форма Windows с расширенным текстовым полем с текстом. В зависимости от того, какое слово отображается под мышкой на всплывающей подсказке. Но я хотел бы скрыть всплывающую подсказку, когда мышь начинает двигаться и, следовательно, больше не зависает над словом, а когда мышь снова наводит курсор на слово, всплывающая подсказка отображается снова. Отображение всплывающей подсказки для определенных слов работает отлично, но как только всплывающая подсказка отображается, мне нужно выйти и повторно ввести расширенное текстовое поле, чтобы всплывающая подсказка отображалась в другом слове.

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

Короче говоря, у меня есть 2 (простых) вопроса:

  1. Как заставить всплывающую подсказку исчезать при перемещении мыши?
  2. Как заставить всплывающую подсказку появляться снова при наведении мыши, не покидая текстового поля?

Вот так подсказка отображается в Mouse Hover (закомментированные строки не работают даже в сочетании с кодом (кодами) в Mouse Move):

//toolTip_tp.Active = true;
string toolTipText = "Test";
//toolTip_tp.Show(toolTipText, targetTextBox);
toolTip_tp.SetToolTip(targetTextBox, toolTipText);

Я пробовал следующий код (отдельно и в сочетании с закомментированными строками в Mouse Hover) в Mouse Move, но нет Ничего из этого не сработало:

//text won't appear on hover
toolTip_tp.Hide(richTextBox_MouseOver);
toolTip_tp.SetToolTip(richTextBox_MouseOver, null);
toolTip_tp.Active = false;
toolTip_tp.RemoveAll();
toolTip_tp.Active = false;
toolTip_tp.Active = true;

//tooltip stays displayed for preset time
toolTip_tp.AutoPopDelay = 1;
toolTip_tp.AutoPopDelay = 5000;

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

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