Tag: 工具提示

如何在文本框密码字段上禁用系统的大写锁定通知

在Winforms Textbox ,我定义了新的ToolTip并对其进行了配置。 我已将PasswordChar设置为’*’。 但是,当大写锁定打开时,会显示两个tooltip 。 其中一个是我的另一个是系统的默认tooltip通知。 我只想展示我的tooltip 。 我想禁用系统的tooltip 。 我该如何禁用它?

WinForms中的自定义工具提示控件

有没有一种简单的方法来在C#/ WinForms中创建和显示自定义工具提示控件? 我目前的想法是: 创建Tooltip的子类,重写OnPaint方法,将其设置为父控件的工具提示 创建表单的子类并手动显示它 有什么想法吗?

C#工具提示显示的时间不够长

我有一个工具提示出现在鼠标hover在图像上: ToolTip tt = new ToolTip(); protected virtual void pictureBox_MouseHover(object sender, EventArgs e) { tt.InitialDelay = 0; tt.SetToolTip(this.pictureBox, “Click ‘LIVE …”); } 我的问题是我的文字很长,工具提示消失得太快。 如何让工具提示显示更长时间?

是否可以格式化工具提示文本(粗体,下划线等)?

我想在WinForms应用程序中制作一些标准工具提示粗体段落。 这可能吗? 如果没有,是否有(免费)工具提示组件允许我设置样式(最好也是边框和背景)? 谢谢!

如何在控件聚焦时不断显示工具提示?

如何在控件聚焦时不断显示工具提示? 我尝试过很多东西,似乎没什么用。 现在我有以下内容: Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. 它看起来应该非常简单,但事实并非如此。 为什么不? 我将工具提示的IsOpen属性绑定到文本框的IsKeyboardFocused属性。 因此,它应该在工具提示聚焦时显示。 为什么不呢?

如何让ToolTip绑定与ComboBox一起使用?

目前我有一个ComboBox定义为: 一切都有效,除了工具提示。 它应该绑定的属性; ToolTip包含一个值。 我确定这一点,因为当我执行以下操作时,我看到一个结果确认ToolTip包含一个值: 用ToolTip替换了Description ,我可以看到ToolTip的值出现在屏幕上。 然而 ToolTip=”{Binding Path=ToolTip}” 仍然不起作用。 如果我尝试按如下方式显示ToolTip: ToolTip=”ToolTip” 它只显示“工具提示”一词。 如何让ToolTip显示值?

在文本框条目上显示工具提示

我有一个textbox ,需要以某种方式输入数据。 我已经实现了一些单元validation技术来检查输入后的数据,但我想在输入数据之前向用户提供一些信息。 为此,我想在用户进入工具箱时弹出的textbox添加tooltip ,然后在他们开始输入时退出。 例如,我有以下代码: private void YearEdit_Enter(object sender, EventArgs e) { ToolTip tt = new ToolTip(); tt.IsBalloon = true; tt.InitialDelay = 0; tt.ShowAlways = true; tt.SetToolTip(YearEdit, “Enter 4 digit year.”); } 这在用户输入textbox时执行,但只有当鼠标hover在textbox时才会显示tooltip 。 有没有人有任何想法解决这个问题? 我想也许tt.ShowAlways = true可能tt.ShowAlways = true ,但显然不行。

以编程方式获取Win32传统控件的工具提示文本

我想获得win32遗留控件的工具提示文本(不是WPF控件本身支持UI自动化 )。 我做了什么: 给定一个感兴趣的按钮,我有它的AutomationElement ,以及它的边界矩形 我将鼠标移到了这个按钮上(代码中); Thread.Sleep(1500)等待弹出工具提示控件; 枚举Desktop的所有子窗口,并获取子窗口tooltipAutomationElement ,其类型为”Tooltip” ; 从tooltipAutomationElement获取此工具提示的name属性,该属性对应于工具提示字符串。 这实际上是有效的,但惩罚是:我必须sleep(1500)并手动等待工具提示出现(5-20​​个按钮将被扫描工具提示字符串),这与性能要求不符。 预期结果(不确定是否可行) 以编程方式获取按钮的工具提示字符串,而不需要显示工具提示 无需逐个鼠标放在每个按钮上。 更新1 :对于TTN_NEEDTEXT ,MSDN doc似乎不是很清楚,我不知道如何使用C#编程。 可以在此处找到与工具提示控制相关的低级结构/消息的相关链接之一。 更新2 :那些相信这可以通过……完成的人,我会说,说起来容易做起来难。 我欢迎那些尝试过的人,对此发表评论,如果你能提供一些证据来certificate其适用性和功效,我欢迎一些表面上可行的解决方案。 更新3 :如果我们尝试最小化TTM_SETDELAYTIME以使sleep(N)最小化,则在一些实验之后这不起作用。 我们只能在工具提示窗口句柄存在后进行调整。 例如 SendMessage(_tooltipCtrl.Handle, TTM_SETDELAYTIME, _TTDT_INITIAL, 10); //10 ms 更新4 :使用TTM_GETTEXTA消息似乎是一个解决方案,但是,它类似于Update 3,我们需要tooltipCtrl的句柄,只有在创建工具提示后才可用,因为要创建此工具提示,我们没有选择,但将鼠标光标hover在工具上方,这似乎有如上所述的性能问题( Thread.Sleep )。 SendMessage(_tooltipCtrl.Handle, TTM_GETTEXTA, 0, ti); 更新5 :“如何获取工具提示文本”使用InterOp(PInvoke)或Automation UI使用传统方法(鼠标hover在工具窗口上,找到Hwnd句柄,然后获取其文本…)不是这篇文章的关注点。 预期结果: 我们可以提取控件的工具提示字符串(比如一个按钮)而不需要hover在控件上吗? 如果有,怎么样? 更新6 :使用WM_MOUSEHOVER激活工具提示窗口似乎不起作用,我已经使用SendMessage(…)测试了正确的wparam和lparam填充,但静脉。

在修剪文本时显示工具提示

如何仅在修剪文本时显示ToolTip ? 像windows desktp快捷方式图标。

如何删除当前绑定到控件的工具提示?

我正在向标签添加工具提示,如下所示: ToolTip LabelToolTip = new System.Windows.Forms.ToolTip(); LabelToolTip.SetToolTip(this.LocationLabel, text); 当我需要在标签文本发生变化时更改此工具提示时,我会尝试添加新的工具提示。 不幸的是,旧的工具提示仍然在新的工具提示下,这真的很烦人。 有没有一种方法可以删除旧的工具提示,或者我是否应该在我想要更改标签中的文本时创建一个新标签?