教程:使用 .NET 创建 Windows 窗体应用

本简短教程将介绍如何使用 Visual Studio 创建新的 Windows 窗体应用。 生成初始应用后,你将了解如何添加控件以及如何处理事件。 学完本教程后,你将拥有一个可将名称添加到列表框的简单应用。

重要

面向 .NET 7 和 .NET 6 的桌面指南文档正在撰写中。

本教程介绍如何执行下列操作:

  • 创建新的 Windows 窗体应用
  • 将控件添加到窗体
  • 处理控制事件以提供应用功能
  • 运行应用

先决条件

提示

使用 Visual Studio 2022 版本 17.4 或更高版本并安装 .NET 7 和 .NET 6 的各个组件。 在 Visual Studio 2022 版本 17.4 中增加了对 .NET 7 的支持。

创建 Windows 窗体应用程序

创建新应用的第一步是打开 Visual Studio 并通过模板生成应用。

  1. 打开 Visual Studio。

  2. 选择“创建新项目”。

    Create a new Windows Forms project in Visual Studio 2022 for .NET.

  3. 在“搜索模板”框中,键入“winforms”,然后等待搜索结果显示

  4. 在“代码语言”下拉列表中,选择“C#”或“Visual Basic”

  5. 在模板列表中,选择“Windows 窗体应用”,然后单击“下一步”

    重要

    请勿选择“Windows 窗体应用 (.NET Framework)”模板

    下图显示了 C# 和 Visual Basic .NET 项目模板。 如果应用了“代码语言”筛选器,将看到相应的模板

    Search for the Windows Forms template in Visual Studio 2022 for .NET.

  6. 在“配置新项目”窗口中,将“项目名称”设置为“Names”,然后单击“下一步”

    还可以通过调整“位置”路径将项目保存到其他文件夹

    Configure new Windows Forms project in Visual Studio 2022 for .NET.

  7. 最后,在“其他信息”窗口中,针对“Framework”设置选择“.NET 6.0 (长期支持)”,然后单击“创建”

    Select the target framework for a Windows Forms project in Visual Studio 2022.

  1. 打开 Visual Studio。

  2. 选择“创建新项目”。

    Create a new Windows Forms project in Visual Studio 2022 for .NET.

  3. 在“搜索模板”框中,键入“winforms”,然后等待搜索结果显示

  4. 在“代码语言”下拉列表中,选择“C#”或“Visual Basic”

  5. 在模板列表中,选择“Windows 窗体应用”,然后单击“下一步”

    重要

    请勿选择“Windows 窗体应用 (.NET Framework)”模板

    下图显示了 C# 和 Visual Basic .NET 项目模板。 如果应用了“代码语言”筛选器,将看到相应的模板

    Search for the Windows Forms template in Visual Studio 2022 for .NET.

  6. 在“配置新项目”窗口中,将“项目名称”设置为“Names”,然后单击“下一步”

    还可以通过调整“位置”路径将项目保存到其他文件夹

    Configure new Windows Forms project in Visual Studio 2022 for .NET.

  7. 最后,在“其他信息”窗口中,针对“Framework”设置选择“.NET 7.0 (标准支持)”,然后单击“创建”

    Select the target framework for a Windows Forms project in Visual Studio 2022.

生成应用后,Visual Studio 应会打开默认窗体 Form1 的设计器窗格。 如果看不到窗体设计器,请在“解决方案资源管理器”窗格中双击该窗体以打开设计器窗口

Visual Studio 的重要部分

Visual Studio 中对 Windows 窗体的支持包含四个在创建应用时你将与之交互的重要组件:

The important components of Visual Studio 2022 you should know when creating a Windows Forms project for .NET.

  1. “解决方案资源管理器”

    所有项目文件、代码、窗体、资源都将显示在此窗格中。

  2. 属性

    此窗格显示可以基于所选项进行配置的属性设置。 例如,如果从“解决方案资源管理器”中选择一个项,你会看到与该文件相关的属性设置。 如果在“设计器”中选择一个对象,你会看到控件或窗体的设置

  3. 窗体设计器

    这是窗体的设计器。 它是交互式的,可以从“工具箱”拖放对象。 通过在设计器中选择和移动项,可以直观地为应用构建用户界面 (UI)。

  4. 工具箱

    工具箱包含可添加到窗体的所有控件。 若要将控件添加到当前窗体,请双击控件或拖放控件。

提示

如果工具箱不可见,则可以通过“查看”>“工具箱”菜单项来显示它

The view menu with the toolbox item highlighted in a Visual Studio 2022 Windows Forms project.

向窗体添加控件

当 Form1 窗体设计器处于打开状态时,使用“工具箱”窗格将以下控件添加到窗体

  • Label
  • Button
  • Listbox
  • 文本框

可以根据以下设置定位控件并设置其大小。 以直观方式移动这些控件以匹配下面的屏幕截图,或者单击每个控件并在“属性”窗格中配置设置。 还可以单击窗体标题区域来选择窗体:

Object 设置 “值”
表单 文本 Names
大小 268, 180
Label 位置 12, 9
文本 Names
Listbox 名称 lstNames
位置 12, 27
大小 120, 94
文本框 名称 txtName
位置 138, 26
大小 100, 23
Button 名称 btnAdd
位置 138, 55
大小 100, 23
文本 Add Name

设计器中应显示类似于以下内容的窗体:

Visual Studio 2022 designer with the form open for Windows Forms for .NET.

处理事件

现在,窗体已布置好所有控件,你需要处理控件的事件以响应用户输入。 在窗体设计器仍处于打开状态下,请执行以下步骤:

  1. 选择窗体上的按钮控件。

  2. 在“属性”窗格中,单击事件图标 以列出按钮的事件。

  3. 找到“单击”事件,然后双击它以生成事件处理程序

    此操作将以下代码添加到窗体:

    private void btnAdd_Click(object sender, EventArgs e)
    {
    
    }
    
    Private Sub btnAdd_Click(sender As Object, e As EventArgs) Handles btnAdd.Click
    
    End Sub
    

    将放入此处理程序的代码会将 txtName 文本框控件指定的名称添加到 lstNames 列表框控件中。 但是,若要添加名称,需要满足两个条件:提供的名称不能为空,且该名称不能已存在。

  4. 以下代码演示如何将名称添加到 lstNames 控件:

    private void btnAdd_Click(object sender, EventArgs e)
    {
        if (!string.IsNullOrWhiteSpace(txtName.Text) && !lstNames.Items.Contains(txtName.Text))
            lstNames.Items.Add(txtName.Text);
    }
    
    Private Sub btnAdd_Click(sender As Object, e As EventArgs) Handles btnAdd.Click
        If Not String.IsNullOrWhiteSpace(txtName.Text) And Not lstNames.Items.Contains(txtName.Text) Then
            lstNames.Items.Add(txtName.Text)
        End If
    End Sub
    

运行应用

现在已对事件进行编码,可以通过按 F5 键或从菜单中选择“调试”>“开始调试”来运行应用。 随即显示窗体,可以在文本框中输入名称,然后通过单击按钮添加该名称。

Running a Windows Forms for .NET app in Visual Studio 2022.

后续步骤