WPF 资源字典生成操作

WPF Resource Dictionary Build Action

我在 Class Library 项目中名为 SylesResourceDictionary.xaml 的 xaml 文件中有一个 ResourceDictionary。 此 ResourceDictionary 被 Merging 用于不同的视图。

我是 ResourceDictionary 的新手,不确定我的做法是否正确。不同的文章建议不同的构建操作,如 Page 和自定义工具,如 XamlIntelliSenseFileGenerator

  1. 这个 xaml 文件的 Build Action 应该是什么?我将其设置为 Resource

  2. Custom Tool应该是什么?我将其设置为 MSBuildCompile

  3. 我应该删除这个 xaml 文件的 xaml.cs 文件吗?

总的来说:

  1. XamlIntelliSenseFileGenerator
  2. 没有!
  1. ResourceDictionary 的构建操作应设置为 Page
  2. XamlIntelliSenseFileGenerator。只有 XAML 编译器知道如何将 XAML 文件编译为 BAML。
  3. 是的,除非您在代码隐藏文件中定义了任何自定义代码。 ResourceDictionary 可能有代码隐藏文件,但默认情况下只有 XAML。

您可能还想考虑使用 WPF Custom Control Library 模板或 WPF User Control Libary 模板创建项目,而不是使用 Class Library 模板。这将使使用 WPF 和 Visual Studio 中的 XAML 特定类型变得更加容易。您仍然可以向项目中添加任何其他类型。