如何创建水印文本框?

时间:2013-05-01 10:06:18

标签: c# text textbox

我是C#的新手。我有一个非常简单的Windows窗体应用程序,它有一个文本框,标签和一个按钮。我让用户在文本框中输入他们的名字并按下按钮,他们的名字显示在标签上。 现在我想让应用程序更加用户友好,所以在用户在文本框中输入他们的名字之前,我想在文本框中显示文本“输入你的名字:”,但是一旦用户在文本框内单击(到输入他们的名字),我希望“指令”从文本框中消失。是否有任何内置函数在C#中执行此操作?

4 个答案:

答案 0 :(得分:1)

我认为,您正在寻找的是您现在经常在网站上看到的水印功能。有多种方法可以看到这个问题:

Watermark in System.Windows.Forms.TextBox

然而,到目前为止,这不是初学者的材料。在C#中没有针对此行为的内置功能,因此没有“简单”的方法来执行此操作。

答案 1 :(得分:1)

在UI Designer模式下,转到文本框属性,然后在“Text”属性中键入“输入您的姓名”, 然后,这将在您的文本框中显示“输入您的姓名”

此外,如果您认为这不适合,您可能需要查看工具提示,这些工具提示很容易创建和使用,并且可以在最终用户悬停在文本框上时显示

答案 2 :(得分:0)

您所描述的是带水印的文本框。我不相信Winforms有内置的,但有免费的解决方案。也许开始here

答案 3 :(得分:0)

您将处理点击和焦点事件,这不是一个好方法。事实上,只是为了这么简单,你最终会得到非常复杂的代码。稍后,如果您希望实施验证,您的“指令”文本将变得相当痛苦。