如何制作Visual Studio 2010';s";添加用户控件“;创建WPF控件?
我有一个使用“类库”项目模板创建的类库。如果在解决方案资源管理器中右键单击此库并选择“添加>用户控件”,VisualStudio将添加WinForms用户控件。这不是我想要的--我想要“添加>用户控件”来添加WPF用户控件 我已经添加了对WPF程序集(WindowsBase、PresentationFramework和PresentationCore)的引用,我在这个库中已经有了一些WPF用户控件,所有的东西都可以编译。我的库没有对WinForms程序集(System.Drawing和System.Windows.Forms)的引用。但是显然,对于VisualStudio来说,正确的引用还不够,因为当我尝试添加>用户控件时,它会将WinForms引用添加到我的项目中,然后创建一个WinForms用户控件 我可以将WPF用户控件添加到我的WPF应用程序项目中,然后将其移动到我的库中。但这是一种痛苦,我宁愿让它在第一时间正常工作 我认为我的.csproj文件中可能缺少某种神秘的XML元素,它告诉VisualStudio默认使用哪个设计器,如果我使用正确的神秘GUID添加正确的XML元素,它将开始正常工作。如果我能创建一个新的WPF控件库,我可能会比较这两个项目文件并找出答案。但是,我使用的是Visual C#Express,它没有WPF控件库项目的模板,所以我在那里运气不佳如何制作Visual Studio 2010';s";添加用户控件“;创建WPF控件?,wpf,visual-studio,user-controls,visual-studio-express,Wpf,Visual Studio,User Controls,Visual Studio Express,我有一个使用“类库”项目模板创建的类库。如果在解决方案资源管理器中右键单击此库并选择“添加>用户控件”,VisualStudio将添加WinForms用户控件。这不是我想要的--我想要“添加>用户控件”来添加WPF用户控件 我已经添加了对WPF程序集(WindowsBase、PresentationFramework和PresentationCore)的引用,我在这个库中已经有了一些WPF用户控件,所有的东西都可以编译。我的库没有对WinForms程序集(System.Drawing和Syste
我需要对类库的.csproj文件执行什么操作,以便VS2010的“添加”>“新用户控件”将添加WPF UserControl?项目文件中的子项目类ID会影响Visual Studio上下文菜单以及项目的一般行为。最简单的方法是将项目重新创建为:
- WPF用户控制库
- WPF自定义控件库
UserControl
对象之外的其他类型的控件,但作为WPF子项目类型,上下文菜单也可以正确地用于所描述的用例
编辑:
为了完整性,我刚刚测试了如何手动添加子项目guid。将此行添加到.csproj文件中的第一个PropertyGroup
:
<PropertyGroup>
...
<ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
</PropertyGroup>
...
{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}
未使用Visual Studio Express进行测试。正如我在问题中提到的,Visual C#Express没有“WPF自定义控件库”的项目模板。它也没有“WPF用户控制库”。@JoeWhite:编辑我的答案。