所以我有一个PasswordBox
:
<PasswordBox x:Name="pwbPassword" PlaceholderText="Password"
Password="{x:Bind Path=local:Password, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"/>
但是,我也有一个清晰的函数,其中包含:
Password = null
我遇到的问题是PlaceholderText
没有恢复,而是将框留空。
这是一个错误还是我错过了什么?
清除密码框占位符文本时不返回
我检查你的代码,Password
是字符串属性,请与字符串字段绑定。
<PasswordBox
Name="MyPassswordBox"
Height="44"
MaxLength="20"
Password="{x:Bind PassWord, Mode=TwoWay}"
PlaceholderText="Input your Password"
/>
代码隐藏
private string _passWord;
public event PropertyChangedEventHandler PropertyChanged;
private void OnPropertyChanged([CallerMemberName] string propertyName = null)
{
if (PropertyChanged != null)
{
this.PropertyChanged(this, new PropertyChangedEventArgs(propertyName));
}
}
public string PassWord
{
get { return _passWord; }
set
{
_passWord = value;
OnPropertyChanged();
}
}
如果要清除密码,请将PassWord
设置为空。
private void Button_Click(object sender, RoutedEventArgs e)
{
PassWord = null;
}
我已经测试过,占位符文本将被恢复。