visual studio 2019使用net core3.0创建winform无法使用窗体设计器
微软发布正式版netcore3.0后,迫不及待的想体验一下用visualstudio2019在netcore3.0下创建winform程序。创建方法很简单,和以前visualstudio版本步骤差不多。
创建完成之后,尴尬的事情发生了,无法使用窗体设计器,双击Form1.cs文件不行,使用快捷键shift+F7也不行,在网上找了很久,发现好多人都遇到过这种问题,目前有两种解决方案
方案1项目中创建多目标框架,包含netframework和netcore。
打开csproj文件,将目标框架更改为net452和netcoreapp3.0。最终修改结果如下:
WinExe net452;netcoreapp3.0 true false
注意,必须将TargetFramework更改为复数TargetFrameworks。
更改完之后,系统会提示Application未包含“SetHighDpiMode”的定义”和“当前上下文中不存在名称“HighDpiMode”
这是由于netcore3.0加载窗体程序时多了下面一行代码:
Application.SetHighDpiMode(HighDpiMode.SystemAware);
我们只需要用#If过滤一下即可:
//////Themainentrypointfortheapplication. /// [STAThread] staticvoidMain() { #ifnetcoreapp3_0 Application.SetHighDpiMode(HighDpiMode.SystemAware); #endif Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); Application.Run(newForm1()); } }
方案2添加winformsdesigner插件
创建winformcore程序,点击扩展–>管理扩展,打开扩展管理窗体,选中联机,搜索winformdesigner。选择安装即可。
或者手动下载:winformsdesigner
参考地址:https://github.com/dotnet/winforms/tree/master/Documentation/designer-releases
添加完之后,期待已久的窗体设计器就可以出来了。
我目前使用的visualstudio2019的版本信息
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。