样式化一个WPF Passwordbox

15 浏览
0 Comments

样式化一个WPF Passwordbox

我目前正试图完成以下内容:

如果没有输入密码,则应显示文本“密码”。

但是,使用我的模板时,不会显示密码,如果使用装饰器或滚动查看器,无法更改文本的颜色。

您有什么建议可以实现这一目标吗?

这是我的样式代码:


0
0 Comments

问题的出现原因是在创建自定义的ControlTemplate时,需要将名为PART_ContentHost的ScrollViewer放置在PasswordBox内部,而不是直接放置在外部。

解决方法是将Foreground作为另一个Setter放置在Style中,并且在ControlTemplate中使用TemplateBinding来使用Background和Foreground。这样做可以提供更多的灵活性,允许手动更改Background和/或Foreground而不必更改ControlTemplate。

以下是修复后的代码示例:


通过以上的修改,可以解决Styling a WPF Passwordbox的问题。

0