【问题标题】:MaskedTextBox for dates?MaskedTextBox 的日期?
【发布时间】:2021-03-07 22:09:53
【问题描述】:

错误:.ArgumentException:值表示 '3/7/2021' 与掩码不匹配。

我正在使用 MaskedTextBox(来自 xceed wpftoolkit)。我希望用户输入并看到一个干净的日期为"__/__/____",以典型的美国方式为 MM/dd/yyyy。

以下内容适用于“2021 年 3 月 7 日”,

 <xceed:MaskedTextBox Width="240" FontSize="28"  IncludeLiteralsInValue="True"  Value="{Binding EffectiveDateFrom, UpdateSourceTrigger=LostFocus}" ValueDataType="{x:Type s:DateTime}" Mask="0/0/0000" />

但是当掩码更改为时失败

面具="00/00/0000"

那么如何编写允许两个日期为“1999 年 12 月 30 日”或“2021 年 3 月 7 日”的掩码?

感谢您对此提供的任何帮助。 (注意:我不反对任何解决方案:我看到了一些使用 DatePicker 的建议。有什么想法吗?)

TIA

【问题讨论】:

  • 这里只是猜测,但通常的约定是#0/#0/0000
  • @RetiredGeek Nope :) System.ArgumentException: '值表示 '3/7/2021' 与掩码不匹配。 (参数'值')'。谢谢。

标签: maskedtextbox


【解决方案1】:

根据他们的documentation 你想要的是:90/90/0000 如果您使用#0/#0/0000,则必须输入前导空格!

HTH

【讨论】:

  • @RetiredGreek 我同意。但是:System.ArgumentException:'值表示 '3/7/2021' 与掩码不匹配。 (参数'值')'。我想知道 ValueDataType="{x:Type s:DateTime} 是不是搞砸了。但是直接在 DateTime 中(而不是字符串)交谈会很好。哦,好吧。谢谢。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多