【问题标题】:Make TextBox Text Display Like PasswordBox Text使 TextBox 文本像 PasswordBox 文本一样显示
【发布时间】:2011-10-16 23:30:14
【问题描述】:

我想让 TextBox 的 Text 像 PasswordBox 的 Text 一样显示。有什么办法可以做到吗?我认为 TextBox 的样式可能会起作用。我尝试使用 PasswordBox 的默认样式 (http://msdn.microsoft.com/en-us/library/dd334412.aspx) 对其进行样式设置,但没有成功。

【问题讨论】:

  • 它是用代码完成的,而不是 xaml。为什么不使用 PasswordBox?

标签: c# wpf vb.net xaml


【解决方案1】:

您可以通过在TextBox 中添加FontFamily 来尝试此操作,如下所示:

<TextBox Text="{Binding YOUR_PROPERTY}"
         FontFamily="ms-appx:///Assets/PassDot.ttf#PassDot"
         FontSize="35"/>

在我的情况下,这工作得很好。

【讨论】:

【解决方案2】:

使用IValueConverter 将TextBox 的Text 变量中的每个字符替换为*,然后将生成的星号字符串放入TextBox 的tag 属性中。 这样,您的文本框不会显示实际编辑的字符串(如果我理解正确,这里是密码)。

在您的绑定中,输入 UpdateSourceTrigger="PropertyChanged" 以在每个键上而不是在 LostFocus 上更新它。然后将显示的文本绑定到TextBox.Tag属性。

【讨论】:

  • 我现在不能再抽出时间了,但是为了给你指出正确的方向,我更新了我的帖子。
【解决方案3】:

从 .Net 3.0 开始,WPF 中有一个 PasswordBox。

http://www.wpftutorial.net/PasswordBox.html

这是你要找的吗?

【讨论】:

  • 您有什么理由不想使用 PasswordBox 吗?有什么事情是不允许你做的吗?
  • 只是因为我想使用绑定。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-05-08
  • 1970-01-01
  • 1970-01-01
  • 2012-04-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多