【问题标题】:How to create a watermarked textbox? [duplicate]如何创建水印文本框? [复制]
【发布时间】:2013-04-25 08:03:53
【问题描述】:

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

【问题讨论】:

标签: c# text textbox


【解决方案1】:

我认为,您正在寻找的是您现在经常在网站上看到的水印功能。请参阅此 SO 问题以了解多种方法:

Watermark in System.Windows.Forms.TextBox

然而,到目前为止,这还不是初学者材料。 C# 中没有针对这种行为的内置功能,因此没有“简单”的方法可以做到这一点。

【讨论】:

    【解决方案2】:

    在 UI 设计器模式下,转到文本框属性并在“文本”属性中输入“输入您的姓名”, 这将在您的文本框中显示“输入您的姓名”

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

    【讨论】:

    • 这不是水印方式,但作为初学者,这是您想要使用的方式,只是为了帮助您更轻松,也帮助最终用户。
    【解决方案3】:

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

    【讨论】:

      【解决方案4】:

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

      【讨论】:

        猜你喜欢
        • 2012-03-10
        • 1970-01-01
        • 1970-01-01
        • 2013-09-01
        • 2018-03-01
        • 2014-07-10
        • 1970-01-01
        • 2013-03-23
        相关资源
        最近更新 更多