我正在制作一些封装类,它封装了基类控件的设置细节,但我希望它们使用那里基类的样式。我可以使用以下xaml实现此目的:
<Style TargetType="{x:Type bc:DerviedClass}" BasedOn="{StaticResource {x:Type etk:BaseClass}}"/>
我不想使用xaml,以便客户端程序员不必将此行添加到他的xaml代码中。有没有办法在C#中做到这一点?
由于
答案 0 :(得分:0)
您应该考虑使用Themes / generic.xaml文件设置样式/主题来设置自定义控件的样式。
每当有人使用它时,此主题将成为默认主题。
答案 1 :(得分:0)
我找到了解决方法:
Style s = (Style)derivedObj.FindResource(baseType);
if(s != null)
{
Style derivedStyle = new Style(derivedObj.GetType(), s);
derivedObj.Style = derivedStyle;
}