教程:使用 .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。
打开 Visual Studio。
选择“创建新项目”。
在“搜索模板”框中,键入“winforms”,然后等待搜索结果显示。
在“代码语言”下拉列表中,选择“C#”或“Visual Basic”。
在模板列表中,选择Windows 窗体应用,然后选择“下一步”。
重要
请勿选择“Windows 窗体应用 (.NET Framework)”模板。
下图显示了 C# 和 Visual Basic .NET 项目模板。 如果应用 了代码语言 筛选器,则会列出相应的模板。
在“配置新项目”窗口中,将项目名称设置为“名称”,然后选择“下一步”。
还可以通过调整“位置”路径将项目保存到其他文件夹。
最后,在“其他信息”窗口中,选择框架设置的 .NET 6.0(长期支持),然后选择“创建”。
注意
不再支持 .NET 7。 建议使用 .NET 9.0。
打开 Visual Studio。
选择“创建新项目”。
在“搜索模板”框中,键入“winforms”,然后等待搜索结果显示。
在“代码语言”下拉列表中,选择“C#”或“Visual Basic”。
在模板列表中,选择Windows 窗体应用,然后选择“下一步”。
重要
请勿选择“Windows 窗体应用 (.NET Framework)”模板。
下图显示了 C# 和 Visual Basic .NET 项目模板。 如果应用 了代码语言 筛选器,则会列出相应的模板。
在“配置新项目”窗口中,将项目名称设置为“名称”,然后选择“下一步”。
还可以通过调整“位置”路径将项目保存到其他文件夹。
最后,在“其他信息”窗口中,选择框架设置的 .NET 7.0(标准术语支持),然后选择“创建”。
打开 Visual Studio。
选择“创建新项目”。
在“搜索模板”框中,键入“winforms”,然后等待搜索结果显示。
在“代码语言”下拉列表中,选择“C#”或“Visual Basic”。
在模板列表中,选择Windows 窗体应用,然后选择“下一步”。
重要
请勿选择“Windows 窗体应用 (.NET Framework)”模板。
下图显示了 C# 和 Visual Basic .NET 项目模板。 如果应用 了代码语言 筛选器,则会列出相应的模板。
在“配置新项目”窗口中,将项目名称设置为“名称”,然后选择“下一步”。
还可以通过调整“位置”路径将项目保存到其他文件夹。
最后,在“其他信息”窗口中,选择框架设置的 .NET 8.0(长期支持),然后选择“创建”。
打开 Visual Studio。
选择“创建新项目”。
在“搜索模板”框中,键入“winforms”,然后等待搜索结果显示。
在“代码语言”下拉列表中,选择“C#”或“Visual Basic”。
在模板列表中,选择Windows 窗体应用,然后选择“下一步”。
重要
请勿选择“Windows 窗体应用 (.NET Framework)”模板。
下图显示了 C# 和 Visual Basic .NET 项目模板。 如果应用 了代码语言 筛选器,则会列出相应的模板。
在“配置新项目”窗口中,将项目名称设置为“名称”,然后选择“下一步”。
还可以通过调整“位置”路径将项目保存到其他文件夹。
最后,在“其他信息”窗口中,选择框架设置的 .NET 9.0(标准术语支持),然后选择“创建”。
生成应用后,Visual Studio 应打开默认窗体 Form1 的设计器窗口。 如果窗体设计器不可见,请双击解决方案资源管理器窗口中的窗体以打开设计器窗口。
Visual Studio 的重要部分
在 Visual Studio 中对Windows 窗体的支持在创建应用时具有四个重要组件:
“解决方案资源管理器”
所有项目文件、代码、窗体、资源都在此窗口中显示。
属性
此窗口显示可以根据所选项的上下文配置的属性设置。 例如,如果从解决方案资源管理器中选择项目,将显示与文件相关的设置。 如果选择设计器中的对象,将显示控件或窗体的属性。
窗体设计器
这是窗体的设计器。 它是交互式的,可以从“工具箱”拖放对象。 通过在设计器中选择和移动项,可以直观地为应用构建用户界面 (UI)。
工具箱
工具箱包含可添加到窗体的所有控件。 若要将控件添加到当前窗体,请双击控件或拖放控件。
提示
如果工具箱不可见,则可以通过“查看”“工具箱”菜单项来显示它>。
向窗体添加控件
打开 Form1 窗体设计器后,使用“工具箱”窗口将以下控件从工具箱中拖动并将它们拖放到窗体中,从而将控件添加到窗体中:
- 按钮
- 标签
- Listbox
- 文本框
根据下图定位和调整控件的大小:
可以使用鼠标移动控件并调整控件大小以匹配上一个图像,也可以使用下表配置每个控件。 若要配置控件,请在设计器中选择它,然后在“属性”窗口中设置相应的设置。 配置窗体时,请选择窗体的标题栏。
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 |
处理事件
现在,窗体已设置其所有控件,下一步是添加事件处理程序以响应用户输入。 转到表单设计器并执行以下步骤:
选择 窗体上的“添加名称 ”按钮控件。
在 “属性” 窗口中,选择事件图标 以列出按钮的事件。
找到“单击”事件,然后双击它以生成事件处理程序。
此操作将以下代码添加到窗体中:
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
的名称。 但是,若要添加名称,需要满足两个条件:提供的名称不能为空,且该名称不能已存在。以下代码演示如何将名称添加到
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 键或 从菜单中选择“调试>开始调试 ”来运行应用。 应用启动时,将显示窗体,你可以在文本框中输入名称并选择按钮。