![]() But for my PasswordBox never gets the value. If we made any mistake (defined on my Validation class), when I do this: if (!beUserName.HasError & !bePassword.HasError)Įach BindingExpression should say true of false depending on error validations. ![]() If (bePassword != null) bePassword.UpdateSource() Their app helps people securely store, retrieve, create and share passwords on any device. If (beUserName != null) beUserName.UpdateSource() Īnd this is how I get it for the PasswordBox: BindingExpression bePassword = textBoxUserPass.GetBindingExpression(PasswordBoxAssistant.BoundPassword) PasswordBox is a free service that allows users to securely store, retrieve and share passwords and other personal data anytime, anywhere, on any device. This is how I get the BindingExpression for each TextBox: BindingExpression beUserName = textBoxUserName.GetBindingExpression(TextBox.TextProperty) This is a regular TextBox that I use and works fine: Īnd this is the PasswordBox I tried to simulate: So, apparently, fantastic! I can bind my PasswordBox with its Password property, so then I can bind with my validation. Because its Password is not bindable due to security reasons, I tried to make a binding following this link (also explained here, for CodeProject users). For making validations I followed this link, that shows how to validate on TextBox. I'm trying to make a validation for a PasswordBox. ((MyObject)DataContext).SecurePassword = MyPassword.SecurePassword this should trigger binding and therefore validation Private void MyPassword_Changed(object sender, RoutedEventArgs e) Note The control uses Windows coordinates with the x-axis values increasing to the right and the y-axis values increasing downward. Each component has a one pixel buffer around it. MyPassword.SetBinding(SecurePasswordProperty, passwordBinding) The PasswordEye control is a UserControl composed of a Panel, a TextBox, and a Button. you can configure other binding stuff here PasswordBinding.ValidatesOnDataErrors = true Public static readonly DependencyProperty SecurePasswordProperty =ĭependencyProperty.RegisterAttached("SecurePassword", typeof(SecureString), typeof(MyWindow)) ĭataContext = myObject // created somewhereīinding passwordBinding = new Binding(SecurePasswordProperty.Name) Then, the corresponding Window code like this will trigger PasswordBox binding: // add a custom DependencyProperty If (SecurePassword = null || SecurePassword.Length = 0)Īnd a Window Xaml with a PasswordBox like this: this is where I code my custom business rule If (memberName = "SecurePassword" || memberName = null) Private string Validate(string memberName) Set Mode=TwoWay on your binding local:PasswordBoxAssistant.BoundPassword=" Try setting ValidatesOnDataErrors=True and ValidatesOnExceptions=True on your binding:
0 Comments
Leave a Reply. |
Details
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |