我需要在TextBox中显示一系列带有一些特殊符号的数字,当鼠标悬停在数字上时,这些数字可以显示更多信息。
例如,我在TextBox中放入如下内容:
价值:45 *,35,21 21,34
当用户将鼠标移到“ *”符号上时,将出现一个带有一些文本的小窗口。
这可能吗?我对此有点困惑……事实上,文本中的超链接之类的东西也可能会有所帮助。
最佳答案
您可以使用GetCharFromPosition函数来确定鼠标悬停在哪个字符上:
ToolTip tt = new ToolTip();
Char lastChar = ' ';
void textBox1_MouseMove(object sender, MouseEventArgs e) {
char c = textBox1.GetCharFromPosition(e.Location);
if (c.Equals('*')) {
if (!c.Equals(lastChar)) {
lastChar = c;
tt.Show("This is something special", this.textBox1,
new Point(e.Location.X + 20, e.Location.Y + 20),
2000);
}
} else {
lastChar = ' ';
tt.Hide(this.textBox1);
}
}
关于c# - 如何在文本框中检测特殊符号?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21856267/