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

本教程介绍如何使用 Visual Studio 创建新的Windows 窗体应用。 使用 Visual Studio,可以向窗体添加控件并处理事件。 在本教程结束时,你有一个简单的应用,用于向列表框添加名称。

在本教程中,你将了解:

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

先决条件

注意

不再支持 .NET 6。 建议使用 .NET 9.0。

注意

不再支持 .NET 7。 建议使用 .NET 9.0。

创建 Windows 窗体应用程序

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

注意

不再支持 .NET 6。 建议使用 .NET 9.0。

  1. 打开 Visual Studio。

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

    在 Visual Studio 2022 中创建适用于 .NET 的新 Windows 窗体项目。

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

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

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

    重要

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

    下图显示了 C# 和 Visual Basic .NET 项目模板。 如果应用 了代码语言 筛选器,则会列出相应的模板。

    在 Visual Studio 2022 中搜索适用于 .NET 的 Windows 窗体模板。

  6. “配置新项目”窗口中,将项目名称设置为“名称”,然后选择“下一步”。

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

    在 Visual Studio 2022 中配置适用于 .NET 的新 Windows 窗体项目。

  7. 最后,在“其他信息”窗口中,选择框架设置的 .NET 6.0(长期支持),然后选择“创建”。

    在 Visual Studio 2022 中选择适用于 Windows 窗体项目的目标框架。

注意

不再支持 .NET 7。 建议使用 .NET 9.0。

  1. 打开 Visual Studio。

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

    在 Visual Studio 2022 中创建适用于 .NET 的新 Windows 窗体项目。

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

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

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

    重要

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

    下图显示了 C# 和 Visual Basic .NET 项目模板。 如果应用 了代码语言 筛选器,则会列出相应的模板。

    在 Visual Studio 2022 中搜索适用于 .NET 的 Windows 窗体模板。

  6. “配置新项目”窗口中,将项目名称设置为“名称”,然后选择“下一步”。

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

    在 Visual Studio 2022 中配置适用于 .NET 的新 Windows 窗体项目。

  7. 最后,在“其他信息”窗口中,选择框架设置的 .NET 7.0(标准术语支持),然后选择“创建”。

    在 Visual Studio 2022 中选择适用于 Windows 窗体项目的目标框架。

  1. 打开 Visual Studio。

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

    Visual Studio 2022 中“开始”对话框的屏幕截图。“创建新项目”按钮突出显示了红色框。

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

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

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

    重要

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

    下图显示了 C# 和 Visual Basic .NET 项目模板。 如果应用 了代码语言 筛选器,则会列出相应的模板。

    术语“winforms”位于搜索框中,并用红色框突出显示。红色框中的箭头指向两个模板:C# 和 Visual Basic。模板还突出显示了红色框。从这些红色框,箭头向下指向用红色框突出显示的“下一步”按钮。

  6. “配置新项目”窗口中,将项目名称设置为“名称”,然后选择“下一步”。

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

    Visual Studio 2022 中“配置新项目”对话框的屏幕截图。“项目名称”文本框中有“名称”一词,并用红色框突出显示。“下一步”按钮还突出显示了红色框。

  7. 最后,在“其他信息”窗口中,选择框架设置的 .NET 8.0(长期支持),然后选择“创建”。

    Visual Studio 2022 中“其他信息”对话框的屏幕截图。“Framework”下拉列表框选择了“.NET 8.0(长期支持)”,并突出显示了红色框。“创建”按钮还突出显示了红色框。

  1. 打开 Visual Studio。

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

    Visual Studio 2022 中“开始”对话框的屏幕截图。“创建新项目”按钮突出显示了红色框。

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

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

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

    重要

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

    下图显示了 C# 和 Visual Basic .NET 项目模板。 如果应用 了代码语言 筛选器,则会列出相应的模板。

    术语“winforms”位于搜索框中,并用红色框突出显示。红色框中的箭头指向两个模板:C# 和 Visual Basic。模板还突出显示了红色框。从这些红色框,箭头向下指向用红色框突出显示的“下一步”按钮。

  6. “配置新项目”窗口中,将项目名称设置为“名称”,然后选择“下一步”。

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

    Visual Studio 2022 中“配置新项目”对话框的屏幕截图。“项目名称”文本框中有“名称”一词,并用红色框突出显示。“下一步”按钮还突出显示了红色框。

  7. 最后,在“其他信息”窗口中,选择框架设置的 .NET 9.0(标准术语支持),然后选择“创建”。

    Visual Studio 2022 中“其他信息”对话框的屏幕截图。“Framework”下拉列表框已选中“.NET 9.0(标准术语支持)”,并突出显示了红色框。“创建”按钮还突出显示了红色框。

生成应用后,Visual Studio 应打开默认窗体 Form1 的设计器窗口。 如果窗体设计器不可见,请双击解决方案资源管理器窗口中的窗体以打开设计器窗口。

Visual Studio 的重要部分

在 Visual Studio 中对Windows 窗体的支持在创建应用时具有四个重要组件:

创建适用于 .NET 的 Windows 窗体项目时应了解的 Visual Studio 2022 重要组件。

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

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

  2. 属性

    此窗口显示可以根据所选项的上下文配置的属性设置。 例如,如果从解决方案资源管理器中选择项目,将显示与文件相关的设置。 如果选择设计器中的对象,将显示控件或窗体的属性。

  3. 窗体设计器

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

  4. 工具箱

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

提示

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

Visual Studio 2022 Windows 窗体项目中的“视图”菜单突出显示了“工具箱”项。

向窗体添加控件

打开 Form1 窗体设计器后,使用“工具箱”窗口将以下控件从工具箱中拖动并将它们拖放到窗体中,从而将控件添加到窗体中:

  • 按钮
  • 标签
  • Listbox
  • 文本框

根据下图定位和调整控件的大小:

Visual Studio 2022 设计器,窗体为 .NET 的 Windows 窗体打开。有一个用于存储名称的列表框、一个包含名称的文本框,以及一个按钮添加名称。

可以使用鼠标移动控件并调整控件大小以匹配上一个图像,也可以使用下表配置每个控件。 若要配置控件,请在设计器中选择它,然后在“属性”窗口中设置相应的设置。 配置窗体时,请选择窗体的标题栏。

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

处理事件

现在,窗体已设置其所有控件,下一步是添加事件处理程序以响应用户输入。 转到表单设计器并执行以下步骤:

  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 键或 从菜单中选择“调试>开始调试 ”来运行应用。 应用启动时,将显示窗体,你可以在文本框中输入名称并选择按钮。

在 Visual Studio 2022 中运行适用于 .NET 的 Windows 窗体应用。