没有 setter 的属性上的数据绑定

Vic*_*jee 5 c# data-binding wpf mvvm

如何将数据绑定到只有 getter 而没有 setter 的属性以从 wpf 中的视图模型访问它?我正在使用PasswordBox并希望将其SecureString属性绑定到 ViewModel 属性。我怎样才能做到这一点?

den*_*zov 0

在 xaml 中绑定:

<PasswordBox Text="{Binding SecureString, Mode=OneWay}"...
Run Code Online (Sandbox Code Playgroud)

如果您不希望它从 xaml 绑定更改

public string SecureString
{
   get { return _secureString;}
   private set
   {
      if(_secureString == value) return;
      _secureString = value;
      RaisePropertyChanged(() => SecureString);
   }

 public void SetSecureString(string newSecureString)
 {
     SecureString = newSecureString;
 }
Run Code Online (Sandbox Code Playgroud)

ViewModel 的使用者应该能够SecureString通过该方法进行设置。