将项目类型从类库更改为WPF用户控件库

ie3xauqp  于 2023-04-07  发布在  其他
关注(0)|答案(3)|浏览(207)

在设置我的Prism WPF解决方案时,我添加了一个项目作为类库。刚刚意识到我希望它作为WPF用户控件库来添加资源字典和其他WPF相关的东西。有没有办法将我的类库项目转换为WPF用户控件库项目?(项目属性只有在控制台、类库、Windows应用程序之间转换的选项!)

dl5txlt9

dl5txlt91#

您需要将以下内容添加到项目文件中;
<FileAlignment>元素下

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

您可能还需要确保在<ItemGroup>元素中添加了以下引用:

  • <Reference Include="WindowsBase" />
  • <Reference Include="PresentationCore" />
  • <Reference Include="PresentationFramework" />
  • <Reference Include="System.Xaml" />
uubf1zoe

uubf1zoe2#

这不是一个容易的改变通过项目属性(alt+enter).你需要手动编辑.proj文件在一个编辑器(说记事本/ textpad)当你比较classlibrary项目和WPF Usercontrol库项目.proj文件你会发现他们的区别是通过节点中的节点.
你需要添加ProjectTypeGuids,WarningLevel和TargetFrameworkProfile .据我所知,他们开始通过PRojectTypeGuids节点指定项目类型!这真的很酷!
创建一个类库项目和一个WPF用户控件库项目,并在编辑器中打开.proj文件进行比较,你应该能够弄清楚我在这里说什么!

6kkfgxo0

6kkfgxo03#

在.Net 6中很简单,只需在PropertyGroup下启用UseWPF,并将TargetFramework节点更改为'net6.0-windows'。如下所示:

<PropertyGroup>
<TargetFramework>net6.0-windows</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<UseWPF>true</UseWPF>
</PropertyGroup>

相关问题