C#学习笔记(三)Visual Studio安装与使用

博主刚开始接触C#,本系列为学习记录,如有错误欢迎各位大佬指正!期待互相交流!
上一篇文章中安装了Visual Studio Code来编写调试C#程序,但是博主的目标是编写带窗口的应用程序,了解之后发现需要安装Visual Studio,因此本篇文章主要介绍Visual Studio的安装与简单使用,如有问题,欢迎各位大佬批评指正!

文章目录

一、Visual Studio安装

首先去官网下载VS的安装包,Visual Studio官方下载地址。之后开始安装,具体安装过程可以参考大佬的文章VisualStudio如何进行桌面软件开发?,这里就不再详细介绍了,关键点在于"工作负荷"中选择".NET桌面开发",选择"下载时安装",记得修改一下安装路径,尽量不要装在C盘。

二、新建工程

安装完VS之后,首先我们新建一个工程,点击"创建新项目"

按照如下配置选择,选择C#语言Windows平台

点击下一步,输入项目名称,配置好存储路径,选择一下框架之后直接点击创建即可,创建完成后会直接进入到项目中,如果我们关掉之后想再次编辑项目,可以找到项目所在文件夹,双击后缀为.sln的文件即可

三、编写第一个窗体函数

3.1 编辑窗体(UI)

首先我们设计一下窗体,也就是用户使用时看到的UI页面,如果有过MATLAB GUI开发经验的小伙伴应该会感到很熟悉,首先我们找到工具栏

在工具栏中有我们需要用到的控件,比如按钮(Button)、输入文本框(TextBox)、复选框(CheckBox)、下拉列表(ComBox)和标签(Lable)等。

我们新建一个下面这样的UI

3.2 密码输入

我们首先来看一下密码输入,要实现的功能很简单,输入密码,不勾选显示密码时,密码用"*"代替,勾选显示密码时能够显示密码。

首先我们选中输入密码的文本输入框,在右侧的属性中找到图中的一项,将其修改为"*"

点击复选框,将名称修改为"显示密码"

双击复选框,会自动生成一个复选框对应的函数,一旦复选框选择状态发生变化就会执行函数

csharp 复制代码
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
}

之后我们编辑函数体内容,主要是实先复选框勾选后显示出密码内容,不勾选时用"*"代替

csharp 复制代码
private void checkBox1_CheckedChanged(object sender, EventArgs e)
{
    bool isChecked = checkBox1.Checked;

    if (isChecked)
    {
        Console.WriteLine("checkBox is checked!");
        textBox1.PasswordChar = '\0';
    }
    else
    {
        Console.WriteLine("checkBox is not checked!");
        textBox1.PasswordChar = '*';
    }
}

3.3 下拉列表选择

下面我们来简单实现一下下拉列表选择的功能,要实现的功能就是在复选框选中一个元素后,点击确定能够输出选中的内容。

首先添加一个下拉列表,找到"Items"属性,在其中添加选项

之后和上面一样,修改一下按键的名称,双击按键自动生成按键点击响应函数,我们在其中编写函数体内容

csharp 复制代码
private void button1_Click(object sender, EventArgs e)
{
    string str = (string)comboBox1.SelectedItem;
    Console.WriteLine("选中了:" + str);
}

3.4 获取时间

最后我们尝试获取一下系统时间并显示到标签上去,双击显示时间按钮添加响应函数

csharp 复制代码
private void button2_Click(object sender, EventArgs e)
{
    string timeStr = DateTime.Now.ToString("yyyy-MM-dd HH-mm-ss");
    label1.Text = timeStr;
}

四、结果演示

点击上方工具栏中间的启动即可开始运行,下面是运行效果

在输出中能看到我们在下拉列表中选择的项以及一些输出信息

五、添加图标

首先自己准备一张.icon的图标文件,之后点击整个窗体,修改下面的属性即可

相关推荐
Artech1 天前
[MAF预定义的AIContextProvider-02]AgentSkillsProvider——将Agent Skills引入MAF
ai·c#·agent·agent skills·maf
通信小呆呆2 天前
当算法有了“五感”:多模态数据融合如何向人体感官协同学习?
人工智能·学习·算法·机器学习·机器人
H__Rick2 天前
自动对焦学习-3
人工智能·学习·计算机视觉
Daisy Lee2 天前
量化学习-第1章-什么是量化金融
学习·金融·datawhale
Alsn862 天前
等待学习-学习目录:Docker 容器安全攻防
学习·安全·docker
YM52e2 天前
买菜计算器小应用 - HarmonyOS ArkUI 开发实战-PC版本
学习·华为·harmonyos·鸿蒙·鸿蒙系统
小雨下雨的雨2 天前
HarmonyOS ArkUI训练营入门-组件掌握系列-Animation 动画效果实现-PC版本
学习·华为·harmonyos·鸿蒙
闪闪发亮的小星星2 天前
高斯光以及高斯光公式解释
笔记
cqbzcsq2 天前
CellFlow虚拟细胞论文阅读
论文阅读·人工智能·笔记·学习·生物信息
2601_962072552 天前
李梦娇常识4600问|题库|打印版
sql·华为od·华为·c#·华为云·.net·harmonyos