我正在使用VS 2013(快速版),我想创建一个WPF用户控件库项目。但我无法在已安装的模板列表中找到该模板。如果我使用Winforms,我可以通过将输出类型更改为"类库"来从Winforms应用程序项目中构建DLL。但它并没有在WPF中发生,如果我这样做就会抛出错误。这是正确的做法还是我出错了?
在“创建新项目”对话框窗口中,我无法找到.NET Framework选择器下拉列表。在创建项目之后,我可以通过进入项目的属性来更改.NET框架版本。
请帮助我摆脱这种局面。提前谢谢。
答案 0 :(得分:4)
今天早上我一直在研究这个完全相同的问题。以下是我认为我学到的东西:
使用Visual Studio Express 2013,按设计,WPF用户控件库模板不可用于制作新项目。这是因为它是免费的Express版本。
使用Express版本,您没有“devenv.exe”来尝试“devenv / installvstemplates”来“修复”一些东西。相反,它被调用(只是片刻,当我再次查看它...)“WDExpress.exe”并将位于“C:\ Program Files(x86)\ Microsoft Visual”中(如果您有默认位置) Studio 12.0 \ Common7 \ IDE“目录。 但是 - 这对你没有帮助。它不会解决您的问题,因为正如我所提到的,您的Express安装旨在使新项目无法使用该模板,因此您的“修复”不会将其放在那里。我知道这是因为这是我自己尝试的。 (另请注意,执行此操作的说明会告诉您在执行此操作之前卸载已安装的任何扩展程序。然后,当然,如果您仍然需要它们,则必须重新安装它们。就像我仍然需要做的那样,顺便说一下。我告诉你这一切所以你不要经历我所遇到的头痛。
请注意,我还没有这样做,所以这对我来说有点假设,但是基于我到目前为止在互联网上的研究 - 你的解决方案是手动创建一个WPF用户控件库 [但现在看到下面的UPDATE]。 (不,我不知道该怎么做。我首先考虑到这一点,因为我是一名WPF新手 - 几天前刚开始使用它 - 昨晚深夜我得到了这个好主意在我正在研究的“WPF播放/学习项目”中添加一个“微调器”进度指示器,并在Internet上找到了几个相对容易使用的样本 - 它们都是WPF用户控件库 - 起初我想使用复制粘贴来编写代码。然后我发现......好吧,我们的共同问题,因为我使用的是Visual Studio Express 2013.在New Project下没有这样的模板。我真的在谷歌的尾声,我正在谷歌上搜索你的帖子,Dhivakar,已经出现了正确的谷歌搜索。)所以我还没有完成我的研究,但我的下一步是要学习如何手动创建WPF用户控件库(代码和各种项目属性设置),然后我可以只保存一个WPF用户控件库骨架使用并记录细节。
更新:这家伙完全拥有Express版本的解决方案。我已经按照他的步骤进行了很好的工作。我要添加的唯一附加信息是在我的版本(VSE2013)中,在您创建WPF用户控件库模板后,再次打开Visual Studio并使用文件 - >新项目,我在树中的选择(对于Windows应用程序)出现在模板下 - > Visual C# - > Windows(这是我一直在使用的)。在我创建之后,我没有看到我的模板出现在那里,我想,“太棒了!另一条不起作用的建议。”但后来我在“Visual C#”父级上点击了一个 - 并且有模板!
你走了:
如何将WPF控件库模板添加到Visual C#Express 2008 https://dotupdate.wordpress.com/2007/12/05/how-to-add-a-wpf-control-library-template-to-visual-c-express-2008/
是的,它也适用于VSE2013。
更新2:我对此并不是绝对正面,但我认为他错过了一件小事。在他的第4步中,他说要删除Window1.xaml和App.xaml。也许这不适用于VSE 2008,但在VSE 2013中还有App.config文件,我认为这对我们来说是无关紧要的。所以你也可以删除App.config。正如我所说,我对此还不是很确定,但是当我将WPF用户控件库项目添加到我的解决方案中时,我注意到该项目中的文件,我将其删除,并且解决方案编译好了。
答案 1 :(得分:0)
尝试使用来自https://msdn.microsoft.com/en-us/library/vstudio/ms247116(v=vs.100).aspx
的/ installvstemplates开关运行devenv如果这不起作用,请浏览到C:\ Program Files(x86)\ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ ItemTemplatesCache \ CSharp \ WPF \ 1033 \ WPFUserControl(这可能会根据您的安装目录而改变),在文本编辑器中打开.vstemplate文件,并确保将该设置设置为true,然后再次尝试使用该开关运行devenv。
希望它有所帮助。