在学习WPF的模板(DataTemplate、ItemsPanelTemplate、ControlTemplate)时,经常会想看看WPF内建的控件模板。在的Debugging and Development Utilities中我列了一个工具,它可以查看5种主题的内建模板,通过在这些模板基础上修改建立自己的模板会比从头自己开始简单的多。运行界面如下:
提供了两个free的样式,其中一个是inc,我觉得还不错,准备支持这个样式,界面如下:
但是它并不提供xaml文件,所以不能进行修改。我们可以通过修改Show Me The Template代码,步骤如下:
- 引用Incy.dll样式文件,修改App.xaml文件,添加资源: 代码< Application x:Class = " ShowMeTheTemplate.App " xmlns = " http://schemas.microsoft.com/winfx/2006/xaml/presentation " xmlns:x = " http://schemas.microsoft.com/winfx/2006/xaml " StartupUri = " Window1.xaml " ShutdownMode = " OnMainWindowClose " > < Application.Resources > <ResourceDictionary Source="/Incy;component/IncOriginal.xaml" /> </ Application.Resources > </ Application >
-
注释Window1.xaml.cs中的两行代码:
代码void themes_SelectionChanged( object sender, SelectionChangedEventArgs e) { ComboBox cb = (ComboBox)sender; Uri themeUri = new Uri(( string )((ComboBoxItem)cb.SelectedItem).Tag, UriKind.Relative); // ResourceDictionary themeResources = (ResourceDictionary)Application.LoadComponent(themeUri); // templateItems.Resources = themeResources; } -
运行后切换左边列表就能看到对应的第三方模板了,下图为切换ListBoxItem的界面:
推荐:
敏捷个人sina微刊:
欢迎转载,转载请注明:转载自