WPF - 管理样式并避免混乱的资源字典

时间:2009-09-17 19:10:32

标签: wpf silverlight xaml expression-blend styles

我花了好几个小时在WPF中进行应用程序设计,并在此过程中创建了一大堆不同的样式。但我注意到我实际上刚刚编辑了SimpleStyles.xaml文件中的样式而不是自定义字典。

因此,我开始右键单击我能找到的所有控件并选择“编辑副本”并在自定义资源字典中创建副本。但后来我发现很多控件都基于几种风格。 SimpleScrollViewer例如包含拇指和可能更多。这在整个项目的整体风格结构中造成了巨大的混乱。

因此,我的问题如下; 从头开始做这个项目时我应该怎么想? 是否最好编辑SimpleStyles控件的副本?是否有某种工具来管理这样的东西?

1 个答案:

答案 0 :(得分:1)

Expression Blend将在您第一次使用SimpleStyled控件时为简单样式添加资源字典。对于真实世界的项目,最佳做法是按资源类型和功能区域分隔资源字典。

例如,您将拥有属于以下类别的水平资源词典:

  1. 刷子
  2. 控件样式
  3. 转换器/选择器
  4. 由于它们是水平的,因此它们的文件名非常明显(例如Brushes.xaml,ControlStyles.xaml,Converters.xaml等)

    如果您使用的是Silverlight,您应该考虑使用Themes。在这种情况下,您将为您创建的每个[themeName] \ generic.xaml创建Brushes.xaml和ControlStyles.xaml。

    然后,您应该为功能区域创建资源字典,其中包含以下内容:

    1. 使用的各种ItemsControl的项目模板。
    2. 使用的各种ContentControl的内容模板。
    3. 一次性控制样式
    4. 每个功能区域都有一个包含上述项目的资源字典(例如CustomerManagementStyles.xaml,Orderingstyles.xaml等)