PasswordBox.PasswordRevealMode 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置一个值,该值指定密码是始终、永远还是选择性地隐藏。
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;
}
}
Private Sub CheckBox_Changed(sender As Object, e As RoutedEventArgs)
If revealModeCheckBox.IsChecked = True Then
passwordBox1.PasswordRevealMode = PasswordRevealMode.Visible
Else
passwordBox1.PasswordRevealMode = PasswordRevealMode.Hidden
End If
End Sub
注解
PasswordRevealMode 取代 了 IsPasswordRevealButtonEnabled ,为你提供更多用户如何查看其密码的选项。 将忽略 IsPasswordRevealButtonEnabled 属性。
若要更改用于隐藏密码的字符,请设置 PasswordChar 属性。
速览模式
默认情况下,会显示密码显示按钮(或“速览”按钮)。 用户必须持续按住按钮来查看密码,以便保持较高级别的安全性。
![显示密码的密码框。](windows.ui.xaml.controls/images/passwordbox_revealed.png?view=winrt-26100)
此属性的值不是确定密码显示按钮是否对用户可见的唯一因素。 其他因素包括控件是否显示在最小宽度上方、 PasswordBox 是否具有焦点以及文本输入字段是否至少包含一个字符。 请注意,出于安全原因,仅当 PasswordBox 首次接收焦点并输入字符时,才会显示密码显示按钮。 如果 PasswordBox 失去焦点,然后重新获得焦点,则不会再次显示显示按钮,除非清除密码并重新开始字符输入。
注意
在Windows 10之前,默认情况下未显示密码显示按钮。 如果应用的安全性要求始终隐藏密码,请确保将 PasswordRevealMode 设置为 Hidden。
隐藏和可见模式
其他 PasswordRevealMode 枚举值(Hidden 和 Visible)会隐藏密码显示按钮,并允许你以编程方式管理是否掩盖密码。
若要始终隐藏密码,请将 PasswordRevealMode 设置为 “隐藏”。 除非需要始终隐藏密码,否则可以提供自定义 UI,让用户在 “隐藏 ”和“ 可见”之间切换 PasswordRevealMode。
在以前版本的 Windows Phone 中,PasswordBox 使用 CheckBox 切换密码是否被遮盖。 可以为应用创建类似的 UI,如示例所示。 你还可以使用其他控件(例如 ToggleButton)以使用户切换模式。
![带有自定义显示切换开关的密码框。](windows.ui.xaml.controls/images/passwordbox_customreveal.png?view=winrt-26100)