Проблема стиля WPF с настраиваемым элементом управления и классом, производным от текстового поля

У меня была такая ситуация:

  • в основном приложении есть app.xaml, который устанавливает Style для TextBox элементов управления
  • настраиваемый элемент управления реализован в отдельной DLL и использует несколько TextBox элементов управления

TextBox Style основного приложения применяется к TextBox элементам управления настраиваемого элемента управления. Прохладный!

Моя проблема возникает из-за того, что мне нужно использовать класс, производный от TextBox, в настраиваемом элементе управления. Теперь TextBox Style основного приложения больше не применяется. Может ли DLL настраиваемого элемента управления иметь что-то вроде «app.xaml», где я могу установить стиль для всех моих производных TextBox элементов управления? Или главное приложение может каким-то образом установить Style для всех классов, производных от TextBox?

Спасибо!


person Warpin    schedule 20.04.2010    source источник


Ответы (1)


Вы можете установить для свойства BasedOn настраиваемого стиля TextBox базовый стиль. Должен автоматически производиться от того базового стиля, который наследует, в данном случае - от стиля на уровне приложения.

<Style x:Key="CustomControlStyle" TargetType="{x:Type local:CustomControl}" BasedOn="{x:Type TextBox}">
person Jeff Wain    schedule 20.04.2010