When applying default theme and template to custom controls that you declared in "/Themes/Generic.xaml" it's done differently in Silverlight and WPF:
public class MyControl : Control { public MyControl() { #if SILVERLIGHT this.DefaultStyleKey = typeof(MyControl); #endif } static MyControl() { #if !SILVERLIGHT DefaultStyleKeyProperty.OverrideMetadata( typeof(HoverControl), new FrameworkPropertyMetadata( typeof(HoverControl))); #endif } }
Also, in the WPF Assembly, you need to register the theme file in AssemblyInfo.cs This is done with the following line of code:
[assembly: ThemeInfo(ResourceDictionaryLocation.None,ResourceDictionaryLocation.SourceAssembly)]
Note: This code is usually added automatically when you create a new WPF project.
No comments:
Post a Comment