带示例的 C# Windows Forms 应用程序教程
Windows 窗体应用程序是设计用于在计算机上运行的应用程序。它不会在 Web 浏览器中运行,因为那样它就变成了 Web 应用程序。
本教程将重点介绍如何创建基于 Windows 的应用程序。我们还将学习一些关于如何使用 C# Windows 应用程序的各种元素的基础知识。
Windows 窗体基础
Windows 窗体应用程序是在桌面计算机上运行的应用程序。Windows 窗体应用程序通常会包含标签、文本框、列表框等控件的集合。
下面是一个简单的 Windows 窗体应用程序 C# 的示例。它显示了一个简单的登录屏幕,用户可以访问该屏幕。用户将输入所需的凭据,然后单击“登录”按钮继续。
因此,以上应用程序中可用控件的一个示例
- 这是一组标签控件,通常用于描述相邻的控件。因此,在我们的例子中,我们有两个文本框,标签用于告知用户一个文本框用于输入用户名,另一个用于输入密码。
- 这两个文本框用于存储用户输入的用户名和密码。
- 最后,我们有按钮控件。按钮控件通常会附加一些代码以执行一组特定操作。例如,在上面的示例中,我们可以让按钮执行验证用户输入的用户名和密码的操作。
C# Hello World
现在,让我们来看一个在 Visual Studio 中实现简单“hello world”应用程序的示例。为此,我们需要执行以下步骤
第 1 步)第一步涉及在 Visual Studio 中创建新项目。启动 Visual Studio 后,您需要选择菜单选项“新建”->“项目”。
第 2 步)下一步是选择项目类型为 Windows 窗体应用程序。在这里,我们还需要指定项目的名称和位置。
- 在项目对话框中,我们可以看到创建 Visual Studio 中不同类型项目的各种选项。单击左侧的 Windows 选项。
- 当我们单击上一步中的“Windows”选项时,我们将看到“Windows 窗体应用程序”选项。单击此选项。
- 我们将为应用程序命名。在我们的例子中,它是 DemoApplication。我们还将提供一个存储应用程序的位置。
- 最后,我们单击“确定”按钮,让 Visual Studio 创建我们的项目。
如果按照上述步骤操作,您将在 Visual Studio 中看到以下输出。
输出:-
您将在 Visual Studio 中看到“窗体设计器”。正是在这个“窗体设计器”中,您将开始构建您的 Windows 窗体应用程序。
在“解决方案资源管理器”中,您还可以看到 DemoApplication Solution。此解决方案将包含以下 2 个项目文件
- 一个名为 Forms1.cs 的窗体应用程序。此文件将包含 Windows 窗体应用程序的所有代码。
- 主程序 Program.cs 是在 Visual Studio 中创建新应用程序时创建的默认代码文件。此代码将包含整个应用程序的启动代码。
在 Visual Studio 的左侧,您还将看到一个“工具箱”。工具箱包含可以添加到 Windows 窗体的所有控件。文本框或标签等控件只是可以添加到 Windows 窗体的一些控件。
下面是工具箱外观的截图。
第 3 步)在此步骤中,我们将向窗体添加一个标签,用于显示“Hello World”。从工具箱中,您需要选择“标签”控件并将其拖到窗体上。
将标签拖到窗体后,您会看到标签嵌入在窗体上,如下所示。
第 4 步)下一步是转到控件的属性并更改文本为“Hello World”。
要转到控件的属性,您需要右键单击控件并选择“属性”菜单选项。
- 属性面板也显示在 Visual Studio 中。因此,对于标签控件,在属性控件中,转到“文本”部分并输入“Hello World”。
- 每个控件都有一组描述该控件的属性。
如果您按照以上所有步骤操作并在 Visual Studio 中运行程序,您将看到以下输出。
输出:-
在输出中,您可以看到 Windows 窗体已显示。您还可以看到“Hello World”已显示在窗体上。
向窗体添加控件
我们在前面的部分中添加标签控件以显示“Hello World”时,已经看到了如何将控件添加到窗体。
让我们看一下 Windows 窗体可用的其他控件,并了解其中一些常用属性。
在我们的 C# Windows 窗体应用程序示例中,我们将创建一个窗体,该窗体具有以下功能。
- 用户输入姓名和地址的功能。
- 选择用户居住城市的选项。
- 用户输入性别选项的功能。
- 选择用户想要学习的课程的选项。我们将为 C# 和 ASP.Net 提供选择。
因此,让我们详细了解每个控件,并将它们添加到窗体以构建具有上述功能的窗体。
分组框
分组框用于将控件逻辑地分组到一个部分。例如,如果您有一系列用于输入个人姓名和地址等详细信息的控件。理想情况下,这些是个人详细信息,所以您希望在窗体上有一个单独的部分来保存这些详细信息。为此,您可以使用分组框。让我们通过下面的示例看看如何实现这一点。
第 1 步)第一步是从工具箱将 Groupbox 控件拖到 Windows 窗体上,如下所示。
第 2 步)添加分组框后,通过单击分组框控件来转到属性窗口。在属性窗口中,转到“文本”属性并将其更改为“用户详细信息”。
进行上述更改后,您将看到以下输出:
输出:-
在输出中,您可以看到分组框已添加到窗体中。您还可以看到分组框的文本已更改为“用户详细信息”。
标签控件
接下来是标签控件。标签控件用于在窗体上向用户显示文本或消息。标签控件通常与其他控件一起使用。常见的例子是标签与文本框控件一起添加。
标签指示用户在文本框中应输入什么。让我们通过下面的示例看看如何实现这一点。我们将添加 2 个标签,一个名为“name”,另一个名为“address”。它们将与稍后部分将添加的文本框控件结合使用。
第 1 步)第一步是从工具箱将标签控件拖到 Windows 窗体上,如下所示。确保您拖动标签控件 2 次,以便有一个用于“姓名”,另一个用于“地址”。
第 2 步)添加标签后,通过单击标签控件来转到属性窗口。在属性窗口中,转到每个标签控件的“文本”属性。
进行上述更改后,您将看到以下输出:
输出:-
您可以看到标签控件已添加到窗体中。
文本框
文本框用于允许用户在 C# Windows 应用程序中输入一些文本。让我们通过下面的示例看看如何实现这一点。我们将向窗体添加 2 个文本框,一个用于姓名,另一个用于用户的地址。
第 1 步)第一步是从工具箱将文本框控件拖到 Windows 窗体上,如下所示。
第 2 步)添加文本框后,通过单击文本框控件来转到属性窗口。在属性窗口中,转到“名称”属性并为每个文本框添加有意义的名称。例如,将用户姓名文本框命名为 txtName,将地址文本框命名为 txtAddress。应该为控件制定命名约定和标准,因为这样更容易为这些控件添加额外功能,我们稍后将看到这一点。
进行上述更改后,您将看到以下输出:
输出:-
在输出中,您可以看到文本框已添加到窗体中。
列表框
列表框用于在 Windows 窗体上显示项目列表。让我们通过下面的示例看看如何实现这一点。我们将向窗体添加一个列表框来存储一些城市位置。
第 1 步)第一步是从工具箱将列表框控件拖到 Windows 窗体上,如下所示。
第 2 步)添加列表框后,通过单击列表框控件来转到属性窗口。
- 首先,更改列表框控件的属性,在我们的例子中,我们将其更改为 lstCity。
- 单击“项”属性。这将允许您添加可以显示在列表框中的不同项。在我们的例子中,我们选择了“集合”项。
- 在弹出的“字符串集合编辑器”中,输入城市名称。在我们的例子中,我们输入了“Mumbai”、“Bangalore”和“Hyderabad”。
- 最后,单击“确定”按钮。
进行上述更改后,您将看到以下输出:
输出:-
在输出中,您可以看到列表框已添加到窗体中。您还可以看到列表框已填充了城市值。
单选按钮
单选按钮用于显示项目列表,用户可以从中选择一个。让我们通过下面的示例看看如何实现这一点。我们将为男性/女性选项添加一个单选按钮。
第 1 步)第一步是从工具箱将“单选按钮”控件拖到 Windows 窗体上,如下所示。
第 2 步)添加单选按钮后,通过单击单选按钮控件来转到属性窗口。
- 首先,您需要更改两个单选控件的文本属性。转到属性窗口,将一个单选按钮的文本更改为 male,将另一个的文本更改为 female。
- 同样,更改两个单选控件的名称属性。转到属性窗口,将一个单选按钮的名称更改为 ‘rdMale’,将另一个的名称更改为 ‘rdfemale’。
进行以上更改后,您将看到以下输出。
输出:-
您将看到单选按钮已添加到 Windows 窗体中。
复选框
复选框用于提供一个选项列表,用户可以从中选择多个选项。让我们通过下面的示例看看如何实现这一点。我们将向 Windows 窗体添加 2 个复选框。这些复选框将为用户提供一个选项,询问他们是否要学习 C# 或 ASP.Net。
第 1 步)第一步是从工具箱将复选框控件拖到 Windows 窗体上,如下所示。
第 2 步)添加复选框后,通过单击复选框控件来转到属性窗口。
在属性窗口中,
- 首先,您需要更改两个复选框控件的文本属性。转到属性窗口,将文本更改为 C# 和 ASP.Net。
- 同样,更改两个单选控件的名称属性。转到属性窗口,将一个复选框的名称更改为 chkC,将另一个的名称更改为 chkASP。
进行上述更改后,您将看到以下输出:
输出:-
按钮
按钮用于允许用户单击按钮,然后开始处理窗体。让我们通过下面的示例看看如何实现这一点。我们将添加一个简单的按钮,名为“Submit”,用于提交窗体上的所有信息。
第 1 步)第一步是从工具箱将按钮控件拖到 Windows 窗体上,如下所示。
第 2 步)添加按钮后,通过单击按钮控件来转到属性窗口。
- 首先,您需要更改按钮控件的文本属性。转到属性窗口,将文本更改为“submit”。
- 同样,更改控件的名称属性。转到属性窗口,将名称更改为“btnSubmit”。
进行上述更改后,您将看到以下输出:
输出:-
恭喜,您现在已经拥有了第一个基本的 Windows 窗体。让我们转到下一个主题,了解如何进行控件事件处理。
C# 控件事件处理
在使用 Windows 窗体时,您可以向控件添加事件。事件是指在执行某个操作时发生的事情。最常见的操作可能是单击窗体上的按钮。在 C# Windows 窗体中,您可以添加代码,当在窗体上按下按钮时,可以使用这些代码执行某些操作。
通常,当按下窗体上的按钮时,表示应该进行某些处理。
在进入按钮事件场景之前,让我们看一个事件及其处理方式。
下面的示例将展示一个列表框控件的事件。因此,每当在列表框控件中选择一个项目时,都应该弹出一个消息框,显示所选的项目。让我们执行以下步骤来实现这一点。
第 1 步)在窗体设计器中双击列表框。执行此操作后,Visual Studio 将自动打开窗体的代码文件。并且它将自动将一个事件方法添加到代码中。每当选择列表框中的任何项目时,都将触发此事件方法。
上面是当您在窗体上双击列表框控件时 Visual Studio 自动添加的代码片段。现在,让我们将以下代码段添加到此代码片段中,为列表框事件添加所需的功能。
- 这是当您双击列表框控件时 Visual Studio 自动创建的事件处理程序方法。您无需担心方法名称的复杂性或传递给方法的参数。
- 在这里,我们通过 lstCity.SelectedItem 属性获取选定的项目。请记住,lstCity 是我们的列表框控件的名称。然后,我们使用 GetItemText 方法获取所选项目的实际值。然后,我们将此值赋给 text 变量。
- 最后,我们使用 MessageBox 方法将 text 变量的值显示给用户。
进行以上更改并在 Visual Studio 中运行程序后,您将看到以下输出。
输出:-
从输出中,您可以看到,当从列表框中选择任何项目时,会弹出一个消息框。它将显示从列表框中选定的项目。
现在让我们看一下最后的控件,即按钮单击方法。这同样遵循相同的理念。只需在窗体设计器中双击按钮,它就会自动添加按钮事件处理程序的该方法。然后,您只需添加以下代码。
- 这是当您双击按钮控件时 Visual Studio 自动创建的事件处理程序方法。您无需担心方法名称的复杂性或传递给方法的参数。
- 在这里,我们正在获取在姓名和地址文本框中输入的名称。这些值可以从文本框的文本属性中获取。然后,我们将这些值分别赋给两个变量,name 和 address。
- 最后,我们使用 MessageBox 方法将姓名和地址值显示给用户。
进行以上更改并在 Visual Studio 中运行程序后,您将看到以下输出。
输出:-
- 首先,在姓名和地址字段中输入一个值。
- 然后单击“Submit”按钮。
单击“Submit”按钮后,将弹出一个消息框,并正确显示您在用户详细信息部分输入的内容。
树形视图和 PictureBox 控件
还有 2 个控件我们可以看一下,一个是“树形控件”,另一个是“图像控件”。让我们看一些如何实现这些控件的示例。
树形控件
- 树形控件用于以树状方式列出项目。最好的例子可能是我们在 Windows Explorer 中看到的。Windows Explorer 中的文件夹结构就像一个树状结构。
让我们通过下面的示例看看如何实现这一点。
第 1 步)第一步是从工具箱将 Tree 控件拖到 Windows 窗体上,如下所示。
第 2 步)下一步是开始向树集合添加节点,以便它可以相应地显示在树中。首先,让我们遵循以下子步骤向树集合添加根节点。
- 转到树视图控件的属性工具箱。单击“节点”属性。这将打开 TreeNode 编辑器。
- 在 TreeNode 编辑器中,单击“添加根”按钮以将根节点添加到树集合。
- 接下来,更改根节点的文本,并将文本提供为 Root,然后单击“确定”按钮。这将添加 Root 节点。
第 3 步)下一步是开始向树集合添加子节点。让我们遵循以下子步骤向树集合添加子根节点。
- 首先,单击“添加子”按钮。这将允许您向 Tree 集合添加子节点。
- 对于每个子节点,更改文本属性。继续重复上一步和此步骤,并添加 2 个其他节点。最后,您将拥有 3 个节点,如上所示,文本分别为 Label、Button 和 Checkbox。
- 单击“确定”按钮。
在进行了以上更改后,您将看到以下输出。
输出:-
您将能够看到 Tree view 已添加到窗体中。当您运行 Windows 窗体应用程序时,您可以展开根节点并查看列表中的子节点。
PictureBox 控件
此控件用于将图像添加到 Winforms C#。让我们通过下面的示例看看如何实现这一点。
第 1 步)第一步是从工具箱将 PictureBox 控件拖到 C# Windows 窗体上,如下所示。
第 2 步)下一步是实际将图像附加到 picture box 控件。这可以通过执行以下步骤来完成。
- 首先,单击 PictureBox 控件的“图像”属性。一个新的窗口将弹出。
- 在此窗口中,单击“导入”按钮。这将用于将图像附加到 picturebox 控件。
- 将弹出一个对话框,您可以在其中选择要附加到 picturebox 的图像。
- 单击“确定”按钮。
进行以上更改后,您将看到以下输出。
输出:-
从输出中,您可以看到图像已显示在窗体上。
摘要
- C# 应用程序中的 Windows 窗体是在计算机桌面上运行的应用程序。Visual Studio Form 结合 C# 可用于创建 Windows 窗体应用程序。
- 可以通过 Visual Studio 中的工具箱将控件添加到 Windows 窗体 C#。标签、复选框、单选按钮等控件可以通过工具箱添加到窗体中。
- 还可以使用树形视图控件和 PictureBox 控件等高级控件。
- 事件处理程序用于响应控件生成的事件。最常见的是为按钮单击事件添加的事件。