在文本框条目上显示工具提示
我有一个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
,但显然不行。
挂钩到textbox.enter事件并使用以下代码:
private void textBox1_Enter(object sender, EventArgs e) { TextBox TB = (TextBox)sender; int VisibleTime = 1000; //in milliseconds ToolTip tt = new ToolTip(); tt.Show("Test ToolTip",TB,0,0,VisibleTime); }
使用X / Y值进行游戏以将其移动到您想要的位置。 可见时间是它消失多久。
仅当鼠标仍处于设计状态时才会显示工具提示。
您可以尝试将InitialDelay
设置为0:
tt.InitialDelay = 0;
但这仍然需要鼠标暂时静止。
然而,还有其他方法。 显示所需输入的常用方法是在文本框中使用水印(淡化文本),该水印显示用户开始键入之前所需的格式。
如果你真的想要一个工具提示,那么你可以添加一个信息图标(通常是“i”),它会在它hover时显示工具提示,或者实现你自己的工具提示。
如果您将日期分成几部分(单独的日,月,年),它也可能有效。 这将允许您更好地控制用户可以输入的内容 – 月份可以成为下拉/combobox,因此它始终是正确的格式。
你可以显示一个工具提示,如下所示:
ToolTip t = new ToolTip(); t.Show("Hello World", textBox1, 1000);
试试这个。 (基于上面的答案)为您想拥有ToolTip的所有控件添加事件处理程序。 将所有事件处理程序指向同一方法。 然后构建你这样的处理方法
上述就是C#学习教程:在文本框条目上显示工具提示分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
private void procToolTips(object sender, EventArgs e) { ToolTip tt = new ToolTip(); Control o = (Control)sender; if ( o.Name == "label1") { tt.Show("Lorem ipsum dolor sit ame", o, 1000); } }
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1021727.html