如何在Visual Studio中打开表单设计器?

时间:2018-11-26 19:26:31

标签: c# visual-studio

我正在尝试在Visual Studio中使用C#创建Windows窗体应用程序。

通常,人们可以在解决方案资源管理器中双击Function UMuTCustomFunc(rng As Range) As Double Dim ws As Worksheet, rCell As Range Set ws = Sheets(rng.Parent.Name) For Each rCell In Intersect(ws.UsedRange, rng).Cells UMuTCustomFunc = Application.WorksheetFunction.RoundUp(rCell.Value / 12, 0) + UMuTCustomFunc Next rCell End Function 文件,以访问简单的拖放设计器。

不幸的是,它仅打开文件的代码。

solution explorer

5 个答案:

答案 0 :(得分:2)

您处于“文件夹”视图。

切换到“解决方案(项目)”视图。

解决方案资源管理器顶部的此图标enter image description here

答案 1 :(得分:0)

单击下图中突出显示的图标。这是“解决方案和文件夹”图标,它将带您返回解决方案视图。

enter image description here

enter image description here

答案 2 :(得分:0)

在我的情况下,右键单击Form1.cs(带有正确的表单图标),然后选择仍显示代码的“视图设计器”

我发现this thread,并意识到在创建新项目时不小心选择了 .Net Core 而不是 .NET Framework

enter image description here

我应该能够在 Solution Explorer 面板的.csproj文件(.NET Framework)中看到这个长xml,其中TargetFrameworkVersion显示v<Number>

... 
<OutputType>WinExe</OutputType>
<RootNamespace>HelloWorld</RootNamespace>
<AssemblyName>HelloWorld</AssemblyName>
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
...

,而不是下面的简短XML(* .Net Core),其中TargetFramework显示netcoreapp<Number>

<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">

  <PropertyGroup>
    <OutputType>WinExe</OutputType>
    <TargetFramework>netcoreapp3.1</TargetFramework>
    <UseWindowsForms>true</UseWindowsForms>
  </PropertyGroup>

</Project>

要检查项目类型,请参阅this answer

Microsoft devlogs说,默认情况下尚未附带带有.Net Core的 Designer

如果您要使用.NET Core项目,请不要忘记安装 .NET Core Windows窗体设计器,因为尚未交付 默认情况下在Visual Studio中。请参阅前面的“启用 设计师”部分。

答案 3 :(得分:0)

在VS2019中,只需删除第一个项目并重新创建另一个项目。它将解决查看设计器页面的问题。现在您可以查看您的设计师。

答案 4 :(得分:0)

在表单类(在本例中为我的ImageContainer类)之前放置另一个类时,也会遇到相同的问题。

namespace ImageProcessor
{
    internal class ImageContainer
    {
    }
    
    public partial class Form1 : Form
    {
        private ImageContainer m_img = null;
    }
}

通过在internal class ImageContainer之后移动public partial class Form1 : Form { },VS2019拖放设计器可以加载我的Form1类。

namespace ImageProcessor
{
    public partial class Form1 : Form
    {
        private ImageContainer m_img = null;
    }

    internal class ImageContainer
    {
    }
}

解决方案资源管理器中的符号也变回对话框图标。