You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

WPF中如何通过C#修改Material Design PasswordBox的HelperText?

WPF中MaterialDesign PasswordBox校验后修改HelperText的正确方法

你的问题出在直接修改依赖属性对象本身,而不是针对具体的PasswordBox控件实例设置属性值。下面是正确的实现方式:

正确代码实现

结合你XAML里的passwd控件名,在按钮点击事件中编写如下C#代码:

private void CheckPasswordButton_Click(object sender, RoutedEventArgs e)
{
    int pwdLength = passwd.Password.Length;
    if (pwdLength < 10 || pwdLength > 32)
    {
        // 针对指定的PasswordBox控件设置HelperText
        MaterialDesignThemes.Wpf.HintAssist.SetHelperText(passwd, "Wrong!");
    }
    else
    {
        // 校验通过时清空提示文本
        MaterialDesignThemes.Wpf.HintAssist.SetHelperText(passwd, string.Empty);
    }
}

关键说明

  • WPF的依赖属性不能直接像普通字段那样赋值,必须使用对应的SetXxx静态方法(这里是SetHelperText),传入目标控件实例和要设置的值
  • 如果你需要更清晰的提示,可以把"Wrong!"替换成"密码长度必须在10-32位之间"这类明确的提示语

内容的提问来源于stack exchange,提问作者Jésus Christophe

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 12:20:50