0

我想让我的自定义组件,但需要帮助。未能在创建自定义组件(Winrt)中分配给属性?

private string _passwordText; 
    public string PasswordText 
    { 
     get 
     { 
      _passwordText = passwordB.Password; 
      return _passwordText; 
     } 
     set 
     { 
      SetProperty<string>(ref _passwordText, value, "PasswordText"); 
      passwordB.Password = _passwordText; 
      passwordB_PasswordChanged(passwordB, null); 
     } 
    } 


    public event PropertyChangedEventHandler PropertyChanged; 

    private bool SetProperty<T>(ref T storage, T value, [CallerMemberName] String propertyName = null) 
    { 
     if (Equals(storage, value)) return false; 

     storage = value; 
     OnPropertyChanged(propertyName); 
     return true; 
    } 

    private void OnPropertyChanged([CallerMemberName] string propertyName = null) 
    { 
     var handler = PropertyChanged; 
     if (handler != null) 
     { 
      handler(this, new PropertyChangedEventArgs(propertyName)); 
     } 
    } 

类型的异常“Windows.UI.Xaml.Markup.XamlParseException”发生在AkbankStoreApp.exe但在用户代码中没有处理

WinRT的信息:无法分配财产“Windows8.StoreApp .Common.CustomControls.WatermarkPasswordTextBox.PasswordText”。 [Line:51 Position:26]

回答

1

你有一个OnApplyTemplate覆盖?密码B来自哪里?如果是这样,你可能需要检查,如果passwordB不是空值,然后给它的属性赋值。检查this作为参考。

+0

嗨菲利普,感谢您的关注。我没有OnApplyTemplate,但我检查的是passwordB null。我正在尝试OnApplyTemplate –

相关问题