The general approach to controls in WPF is to compose (or restyle) rather than inherit. As such, if you want to create wrapped behavior around a PasswordBox, one option is to derive a new UserControl containing a PasswordBox, then implement the interfaces on your new UserControl. If the overhead of a UserControl is too high (it shouldn't be in most cases; it's a lot lighter than the old WinForms User Control concept), you can derive from FrameworkElement directly, though this is a bit more work (have to override a few methods to forward the Arrange/Measure steps and add the PasswordBox to the visual tree.)