WPF - 模板查看工具:Show Me The Template及如何查看第三方主题

  在学习WPF的模板(DataTemplate、ItemsPanelTemplate、ControlTemplate)时,经常会想看看WPF内建的控件模板。在《WPF - 资源收集》的Debugging and Development Utilities中我列了一个工具Show me the template,它可以查看5种主题的内建模板,通过在这些模板基础上修改建立自己的模板会比从头自己开始简单的多。运行界面如下:

如何修改为查看第三方模板 

  在reuxables提供了两个free的样式,其中一个是inc,我觉得还不错,OpenExpressApp准备支持这个样式,界面如下:

但是它并不提供xaml文件,所以不能进行修改。我们可以通过修改Show Me The Template代码,步骤如下:

  1. 引用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>
  2. 注释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;

    }

     

  3. 运行后切换左边列表就能看到对应的第三方模板了,下图为切换ListBoxItem的界面:

 

推荐:你可能需要的在线电子书

敏捷个人sina微刊:http://kan.weibo.com/kan/3483302195814612

 欢迎转载,转载请注明:转载自敏捷个人网站

 

posted on 2009-12-04 22:38  周 金根  阅读(6362)  评论(1编辑  收藏  举报

导航