Share via


PasswordBox.PasswordRevealMode 属性

定义

获取或设置一个值,该值指定密码是始终、从不还是选择性地被遮盖。

public:
 property PasswordRevealMode PasswordRevealMode { PasswordRevealMode get(); void set(PasswordRevealMode value); };
PasswordRevealMode PasswordRevealMode();

void PasswordRevealMode(PasswordRevealMode value);
public PasswordRevealMode PasswordRevealMode { get; set; }
var passwordRevealMode = passwordBox.passwordRevealMode;
passwordBox.passwordRevealMode = passwordRevealMode;
Public Property PasswordRevealMode As PasswordRevealMode

属性值

枚举的一个值,该值指定密码是始终、从不还是选择性地被遮盖。 默认值为 速览

示例

此示例演示如何使用 CheckBox 让用户切换 PasswordBox 的显示模式。

<StackPanel Width="200">
    <PasswordBox Name="passwordBox1" 
                 PasswordRevealMode="Hidden"/>
    <CheckBox Name="revealModeCheckBox" Content="Show password"
              IsChecked="False" 
              Checked="CheckBox_Changed" Unchecked="CheckBox_Changed"/>
</StackPanel>
private void CheckBox_Changed(object sender, RoutedEventArgs e)
{
    if (revealModeCheckBox.IsChecked == true)
    {
        passwordBox1.PasswordRevealMode = PasswordRevealMode.Visible;
    }
    else
    {
        passwordBox1.PasswordRevealMode = PasswordRevealMode.Hidden;
    }
}

注解

若要更改用于隐藏密码的字符,请设置 PasswordChar 属性。

注意

PasswordRevealMode 取代 了 IsPasswordRevealButtonEnabled ,为你提供更多用户如何查看其密码的选项。 将忽略 IsPasswordRevealButtonEnabled 属性。

速览模式

默认情况下,会显示密码显示按钮(或“速览”按钮)。 用户必须持续按住按钮来查看密码,以便保持较高级别的安全性。

此属性的值不是确定密码显示按钮是否对用户可见的唯一因素。 其他因素包括控件是否显示在最小宽度上方、 PasswordBox 是否具有焦点以及文本输入字段是否至少包含一个字符。 出于安全原因,仅当 PasswordBox 首次获得焦点并输入字符时,才会显示密码显示按钮。 如果 PasswordBox 失去焦点,然后重新获得焦点,则除非清除密码并重新开始字符输入,否则不会再次显示“显示”按钮。

显示密码的密码框。

隐藏和可见模式

其他 PasswordRevealMode 枚举值 HiddenVisible,隐藏密码显示按钮,并允许以编程方式管理密码是否被遮盖。

若要始终隐藏密码,请将 设置为 PasswordRevealModeHidden。 除非需要始终遮盖密码,否则可以提供一个自定义 UI,让用户在 和 Visible之间Hidden切换 PasswordRevealMode 。 请参阅示例部分,了解如何使用 CheckBox 切换密码是否被遮盖。 你还可以使用其他控件(例如 ToggleButton)以使用户切换模式。

带有自定义显示开关的密码框。

适用于

另请参阅