通过Visual Studio 2010将WPF资源字典插入类库

6
我有一个类库,想要更改类型,以便我也可以添加WPF资源字典。我已经添加了WPF引用,并尝试将AssemblyInfo.cs文件与可以添加此类资源文件的项目进行同步,但都没有成功。
如果我在Visual Studio中使用添加新对话框,WPF资源字典的模板不可用 - 如果我手动创建文件然后引用它,则一切正常。
如何将我的项目更改为WPF自定义控件库项目,以便Visual Studio允许我添加WPF资源字典。或者是否存在任何缺点或陷阱,因此我不得不这样做,最好创建一个新的项目文件?

你为什么要首先将资源字典放入类库中呢?我的理解是,类库项目通常不应存储任何与UI相关的信息。 - evasilchenko
是的,根据您的需求,我会使用自定义控件库或用户控件库。 - evasilchenko
1个回答

7

这似乎是在csproj文件中定义的。如果我将以下行添加到PropertyGroup部分中,我就能做到我想要的:

<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>

请注意
虽然我已经找到了定义的位置,但我没有使用更改后的csproj文件版本。我创建了一个具有所需设置的新项目。控件库和类库之间似乎有很多额外的项目设置,只添加上述GUID可能会导致项目/解决方案的意外行为。

我想你可以将问题标记为已回答,但是在类库项目中存储特定于布局的代码(即使只是数据模板)仍然感觉有点不太好。尽管如此,这只是我的个人意见。 - evasilchenko
3
@DeviantSeev说:这个项目不再是一个类库了,现在作为一个自定义控件库使用,我需要模板来创建控件。这本身没有问题。麻烦的是我改变了项目类型的方式,我不确定是否存在其他地方的设置,这是否会导致未来出现问题。所以我已经创建了一个新项目。但我认为这个问题还是值得回答的:或许可以帮助遇到类似问题的人。 - HCL

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接