У меня есть приложение Win32, в котором размещается HostSource для отображения WPF ContentControl.ContentControl получает мой UserControl как контент и отображает его в приложении Win32.ContentControl выглядит следующим образом
public class CustomContentControlWPF : ContentControl
{
public static CustomContentControlWPF()
{
FrameworkElement.DefaultStyleKeyProperty.
OverrideMetadata(typeof(CustomContentControlWPF),
new FrameworkPropertyMetadata(typeof(CustomContentControlWPF)));
}
}
Проблема в том, что мне не нравится стиль, который будет применяться при этом.Я не могу изменить код сборки, где определяется CustomContentControlWPF.Можно ли изменить стиль для CustomContentControlWPF из размещенного дочернего UserControl во время выполнения?
Я пробовал что-то вроде этого:
public MyUserControl : UserControl
{
public void changeStyle()
{
FrameworkElement.DefaultStyleKeyProperty.
OverrideMetadata(typeof(CustomContentControlWPF),
new FrameworkPropertyMetadata(typeof(UserControl)));
}
}
, но это не удается, потому что стиль для типа CustomContentControlWPFуже отменено.
Есть идеи?