我创建了一个CustomControlLibrary.dll,它包含一个Control(MyControl),其样式在Themes文件夹的Generic.xaml中,按照默认的自动设置 .
如果我想在两个不同的项目中包含该dll,每个项目都为“MyControl”提供自定义样式以赋予它不同的外观,我在哪里放置这些自定义样式?
我认为我必须为每个应用程序安装一个Themes \ Generic.xaml,它定义了自定义样式,但是在完成此操作后,它仍然最终使用CustomControlLibrary.dll中定义的样式
2 回答
您有CustomControlLibrary.dll,它是MyControl的所有者 . 在那个dll中你定义了你的主题 . 任何其他可能包含您的DLL的项目都无法定义主题 .
例如,其他项目可以在其窗口资源中为MyControl定义其自定义样式 .
样式可以在任何级别定义 . :)
检查此链接:
http://msdn.microsoft.com/en-us/library/ms745683.aspx
解决方案是为每个项目定义特定样式并相应地应用它 .
但请记住,您可以使用BasedOn属性创建正确的样式"inheritance" . 毕竟你应该得到一组你将在_2655636中管理的样式: