2011-04-01 23 views
9

Básicamente, estoy buscando recursos/guías sobre cómo probar la unidad de un control personalizado de WPF.WPF Custom Control - ¿Cómo prueba un control personalizado?

En esta instancia particular, el control personalizado que creé pasa a extender la clase Decorator. Envuelve un elemento PasswordBox para exponer la propiedad de contraseña de CLR como DependencyProperty.

public class BindablePasswordBox : Decorator 
{ 
    public BindablePasswordBox() 
    { 
     Child = new PasswordBox(); 
     ((PasswordBox)Child).PasswordChanged += this.PasswordChanged; 
    } 

    public static readonly DependencyProperty PasswordProperty = 
     DependencyProperty.Register("Password", typeof(String), typeof(BindablePasswordBox), 
      new FrameworkPropertyMetadata 
      { 
       BindsTwoWayByDefault = true, 
       DefaultUpdateSourceTrigger = UpdateSourceTrigger.LostFocus 
      }); 

    public String Password 
    { 
     get { return (String)GetValue(PasswordProperty); } 
     set { SetValue(PasswordProperty, value); } 
    } 

    void PasswordChanged(Object sender, RoutedEventArgs e) 
    { 
     Password = ((PasswordBox)Child).Password; 
    } 
} 

P.S. Estoy usando el marco de prueba incorporado de Visual Studio (Microsoft.VisualStudio.QualityTools.UnitTestFramework).


para evitar ser contragolpe sobre la exposición de contraseñas en texto plano en la memoria: Yo entiendo que voy en contra del razonamiento de seguridad de Microsoft mediante la exposición de la contraseña en texto plano en una propiedad de dependencia, pero teniendo en cuenta que yo era capaz de utilizar Snoop para exponer la contraseña de texto plano de un PasswordBox estándar Ya no me parece tan importante.

Respuesta

Cuestiones relacionadas