Я добавил ComboBox
по умолчанию ControlTemplate
(скопированный из Blend) к ResourceDictionary
из UserControl
, чтобы я мог переопределить ComboBox
ControlTemplate
. Когда я добавил ControlTemplate
, мне пришлось добавить следующее пространство имен xml:
xmlns:Microsoft_Windows_Themes="clr-namespace:Microsoft.Windows.Themes;assembly=PresentationFramework.Aero"
В шаблоне по умолчанию comboBox есть три ссылки на объекты, которые определены в теме PresentationFramework
<Microsoft_Windows_Themes:ButtonChrome ... >
<Microsoft_Windows_Themes:SystemDropShadowChrome ... >
<Microsoft_Windows_Themes:ListBoxChrome ... >
Есть ли способ удалить эти классы, но разрешить системной теме добавлять их во время выполнения (как это обычно делается)? Поэтому нам не нужно иметь жестко закодированную тему в этом пользовательском элементе управления.
Редактировать: Я понимаю, что это не обертки. Однако они являются указателями на тему. Как динамически выбрать тему, используя только заполнитель во время компиляции?