【问题标题】:VB.NET Placeholder in MaskedTextBoxMaskedTextBox 中的 VB.NET 占位符
【发布时间】:2017-01-05 15:53:23
【问题描述】:

我有一个带有以下掩码的 maskedtextbox:999999。我想在 HTML 中添加类似 placeholder 的内容,以帮助最终用户了解我的 maskedtextbox 的掩码。

我认为我可以在表单加载时创建一个特定的掩码并将文本属性设置为“YYYYMM”(我需要的占位符),当用户输入控件时,重置文本并将掩码更改为 999999 . 但是,我认为有更好的解决方案。

我发现有些人在谈论水印控制,但我想找到更容易使用的东西。

任何帮助将不胜感激。谢谢

【问题讨论】:

  • 你有没有想过使用 DateTimePicker 控件?它可以看起来像一个文本框,并采用自定义格式。
  • 没想到那个控件。我会试试这个。

标签: vb.net placeholder maskedtextbox


【解决方案1】:

按照建议,使用DateTimePicker,这是最简单的方法。

但是,按照问题要求做...

打开Form_Load,设置MaskedTextBox1.Text = "YYYYMM"

然后,要获得在控件处于焦点时将掩码更改为 999999 的效果,请使用 MaskedTextBox1_GotFocus 方法并使用 MaskedTextBox1.Text = "999999"

【讨论】:

  • 我已经自己完成了。但是,我可以选择日期,但我想只显示月份,然后向右或向左转以更改年份。
  • 您可以在MaskedTextBox的问题中发布图片吗?
  • 我现在将尝试只使用 DateTimePicker 控件。目前,我有这个代码: DateTimePicker1.Format = DateTimePickerFormat.Custom 和 DateTimePicker1.CustomFormat = "yyyyMM"
  • @nbadaud 另外请注意,您可以使用“属性”窗口设置属性和格式,而无需对其进行物理编码。 (选择控件,按 F4)。
【解决方案2】:

正如 tinstaafl 在 cmets 中所建议的,我使用了 DateTimePicker 而不是 MaskedTextBox。

我改变了它的属性:

CustomFormat = yyyMM
Format = Custom
ShowUpDown = True

这样,我有一个类似于文本框的东西,我可以只选择年份或月份,并使用向上和向下按钮增加它。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-08-01
    • 2013-09-13
    • 1970-01-01
    • 2013-06-17
    • 2011-12-21
    • 2012-02-20
    • 2011-09-15
    相关资源
    最近更新 更多