表单视图设计器无法在 Visual Studio 2019 中使用 c# .NET Core 3.1 [重复]

Posted

技术标签:

【中文标题】表单视图设计器无法在 Visual Studio 2019 中使用 c# .NET Core 3.1 [重复]【英文标题】:Form view designer is not working in Visual Studio 2019 with C# .NET Core 3.1 [duplicate] 【发布时间】:2020-03-02 21:30:54 【问题描述】:

当我使用 VB.NET 打开一个 Visual Studio 项目时,窗体视图设计器会自动打开,但我使用 Windows 的 C# .NET Core 3.1 打开一个新项目表单然后它显示 form1.cs 的代码。我尝试从 solution explorer 以及从 view>>designer 选项进行替代,但仍然没有显示表单。那里出了什么问题?我对此进行了谷歌搜索,但没有找到有用的。

请检查我在开幕项目期间获得的图像。:

【问题讨论】:

推送Shift+F7,这是打开设计器的快捷方式。您还应该能够使用 VS 环境右侧的解决方案资源管理器访问它。 您确定您没有选择 .Net Core 3 Windows Forms 项目而不是 .Net Framework 项目吗? Core 3 项目还没有设计器。 目标框架为.NET Core 3.0 是的,如前所述,您没有使用 .Net Core 3 的设计器。您现在需要使用 .Net Framework 模板。如果你想测试,可以试试预览版:Introducing .NET Core Windows Forms Designer Preview 本文提到它仅适用于 Visual Studio 16.6 for .NET Core 的预览版。 devblogs.microsoft.com/dotnet/… 【参考方案1】:

确保您的文件中只声明了表单。如果定义了多个类,则设计查看器将无法工作。

【讨论】:

这对我有帮助,设计师工作得很好,直到我在同一个文件中添加了另一个类。当我删除新类时它再次起作用。 这是我的问题。我在与 Form1.cs 相同的文件中有另一个类。当我删除类时,设计师又开始工作了。 天哪,那真是一场噩梦。我在与控件相同的文件中创建了一个 EventArgs 类。 VS 应该发出警告或其他相关信息。你为我节省了很多时间,我自己不可能意识到这一点。【参考方案2】:

在 v16.4 之前预览 VS2019 需要 VSIX 单独安装扩展。现在您可以更新您的 VS2019 预览版(到 16.5 或更高版本)并且您不需要此扩展。您可以通过 VS IDE 的“帮助”菜单来完成。

更新后转到...工具>选项>环境>预览功能并选中“使用.NET Core SDK的预览(需要重新启动)”选项。

重启 VS 就可以了 ;)

-2020 年 4 月编辑

您可以安装启用所有这些和更多功能的预览版。作为预览版,它可能不稳定,但它可以与您的普通版本一起运行,以防预览中出现问题

visualstudio.microsoft.com/vs/preview

【讨论】:

或者您可以在搜索任何内容框中键入Preview Features,而不是通过菜单导航 我可以确认 vs2019 Community v16.5 仍然存在该问题。昨天下载,创建了一个表格,今天打不开。任何尝试只需打开 form.cs 代码的第二个标签 下载了 VSIX 但它说它已经安装了。另外,我还是没有那个预览选项 我在 v16.5.2 上仍然没有显示设计视图。 您需要使用Visual Studio 预览频道【参考方案3】:

请在创建向导中选择 Windows Forms App(.NETFramework) 而不是 Windows Forms App(.NET Core)。

【讨论】:

我不认为这是一个可行的解决方案,因为这些天一切都在向 .NET Core 发展 同样荒谬的 MS 为我们提供了一个不起作用的选项。最糟糕的是我可以创建一个项目并编辑表单,结果发现它不会在第二天重新打开 这是我的解决方案。 这不是解决方案,但就 .net core windows form 有问题,也许我们必须重新考虑使用它,直到他们修复它。我有 Visual Studio 16.5.4,但它仍然无法正常工作。 .NET Core 的解决方法是:不要使用.NET Core。【参考方案4】:

只需转到查看 > 解决方案资源管理器。在那里你会看到你的表格。双击它,您将拥有表单设计器。

我认为加载项目时 Visual Studio 会加载上次关闭项目时打开的选项卡。如果关闭项目时打开了表单代码,则项目以表单代码打开。

编辑:好的,为了更清楚。 form1.designer.cs 是 Visual Studio 自动创建的 C# 代码文件,用于在代码中存储该表单的可视属性和控件。每次您在 Visual Studio 表单设计视图上执行某项操作时,Visual Studio 都会自动更改此代码文件。

您想要的不是那个文件,而是 Visual Studio 表单设计 Biew,您可以通过在解决方案资源管理器中双击表单本身来访问它,而不是 form1.designer.cs 文件。

【讨论】:

我点击了 Solution Explorer 然后双击 form1.designer.cs 它显示的是代码,而不是表单。 那是因为form1.designer.cs是一个.cs文件,这是一个c#代码文件。如果您想要 Visual Studio 的设计视图,请双击该窗体。您看到有一些层次结构,而 form1.designer.cs 就像 form1 的子级? 谢谢,CR0N0S.LXIII。您描述得很好,但是问题是由于从 .Net Framework 中错误选择所致。网络核心。我应该去 .Net Framework 选项。 这行不通。我昨天创建了一个表单并放置了很多按钮、标签等,今天它不再工作了,我使用的是最新的 vs2019 版本。对我来说,它为 form.cs 代码 打开了第二个标签 转到您的项目属性,选择较低版本的框架(如从 4.7.2 到 4.7.1 或使用 Core,如果使用),重新编译,关闭您的解决方案,关闭 VS2109,重新打开您的项目,您应该会看到它。在此之后,将框架更改为之前的框架。这是一个 VS2019 错误(有很多错误)- 不要将 Framework 4.8 用于 winforms(其中有一些非常讨厌的错误!- 使用 GUI 对象)

以上是关于表单视图设计器无法在 Visual Studio 2019 中使用 c# .NET Core 3.1 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

无法使用带有 Visual Studio 2010 的 Windows 窗体恢复设计器视图窗口

在设计器页面中没有显示在 Visual Studio 中以 Web 表单的 .aspx 中创建 html 页面后?

使用部分类和设计器文件将 Visual Studio 2003 表单转换为 Visual Studio 2005/2008 表单

在 Visual Studio 的设计视图中打开表单 (.cs) 会立即显示未保存的更改

Visual Studio 2012 - 禁用单击设计视图

Visual Studio 2008 表单设计器弄乱了布尔属性值