我的编程空间,编程开发者的网络收藏夹
学习永远不晚

C#中的WinForm框架如何使用

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

C#中的WinForm框架如何使用

这篇“C#中的WinForm框架如何使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C#中的WinForm框架如何使用”文章吧。

Label和控件属性

WinForm是一门非常经济实惠的技术,就是说,可以在短时间内学会,并迅速借此进行项目开发。尽管在很多方面不够现代,做出来的东西又Low又丑,但绝大多数的应用场景也不需要高端大气上档次。或许正是因为这种特点,WinForm在工控领域用得非常多,毕竟可以迅速实现某个小功能。

在VS中创建新项目,模板为C#Windows窗体应用,名称位置啥的随便选。

创建成功之后,进入设计窗口,可以看到默认已经生成了一个窗口,如下图所示,然后就可以愉快地拖控件了,所有控件都在左侧的工具箱里。如果初次打开看不到工具箱,可以试一下快捷键Ctrl+Alt+X。

C#中的WinForm框架如何使用

接下来用鼠标把工具箱中的Label拖动到窗口Form1上面,同时关注VS右下角的属性栏,可以看到Label的属性,如下图所示。

C#中的WinForm框架如何使用

当然,VS中的很多工具栏都可以拖动到任意位置,上图就是点击属性栏的▼标志,选择浮动,然后拖动到了Form1的右侧。

其中,(Name)为这个Label1控件在程序中的名字,若想在C#中调用这个标签,就得用到这个名字。

拖动属性栏的滚动条,在外观这一标题下,有Text属性,其内哦让那个为label1,这个Text是Label1这个控件所展示出来的字符,将其更改后,窗口上的标签也响应发生变化,就像下图这样

C#中的WinForm框架如何使用

外观这一主题中的参数,在改动之后几乎都没有什么严重后果,比如各种配色啥的都可以尝试一番,这里就不一一演示了。

按钮和回调逻辑

接下来从工具箱中拖动一个按钮,即把Button拖动到Form1上,将其Text属性改为新Label;将其Name改为btnChangeLabel。

然后双击这个按钮,神奇的一幕发生了,设计窗口不见了,取而代之的是我们熟悉的代码界面,其内容为

namespace WinFormsTest{    public partial class Form1 : Form    {        public Form1()        {            InitializeComponent();        }        private void btnChangeLabel_Click(object sender, EventArgs e)        {        }    }}

命名空间就不说了,Form1是一个继承了Form的类,而其修饰语中,除了老面孔public,又多了一个partial,这个partial表示下面花括号括起来的代码,可以是Form1的一部分。更具体一点,就是说这个Form1类可以写在多个文件中。

接下来,public Form1(),是Form1的构造函数,无需赘言。

再往下,就是刚刚双击按钮所自动生成的响应函数,其中private表示这个函数是个私有函数,只有在Form1这个类中才能被调用。函数名也是自动生成的,包括两部分,下划线前面的就是按钮的名字,下划线后面Click,表示这个函数的触发条件是单击。

然后函数的输入参数有两个,分别是object类型的sender,以及EventArgs类型的e,前者表示刚刚点击的那个按钮,后者表示点击的这个动作。

梳理一下就是,点击按钮是产生了两个变量,即按钮和动作,这两个变量被传递给了btnChangeLabel_Click函数,接下来我们就要写一下这个函数

private void btnChangeLabel_Click(object sender, EventArgs e){    label1.Text = "并没有新Label,只有新Text";}

label1就是上一节创建的Label,label1.Text就是上一节所说的Label的Text属性。这个函数的意思是,当点击按钮的时候,label1的文字发生变化,效果为

C#中的WinForm框架如何使用

事件

点击Shift+F7可以从代码界面返回到设计界面,选中按钮后,查看右下角其对应的属性栏,可以看到一个闪电的小图标,点击这个图标,下拉滚动条,可以看到操作这个子标题下,有个Click的操作,其右侧内容为btnChangeLabel_Click。

至此,事情的前因后果应该就清晰了,按钮btnChangeLabel正是在这个小闪电这里,注册了Click这种操作,并取名为btnChangeLabel_Click,然后才有了代码界面中的函数。

在这个小闪电所对应的列表中,就是可以绑定到按钮btnChangeLabel中的各种事件,Click只是其中一种。这些事件被详细地分门别类,这些类别也很有条理,只有最后一组Key,不知道被哪个神仙翻译成了钥匙,其实指的应该是按键吧。

比如,接下来可以注册一个KeyDown的命令,在其右侧填入btnTest_KeyDown后然后回车,VS会自动跳回到代码界面,并已经新建好了相应的函数

private void btnTest_KeyDown(object sender, KeyEventArgs e){}

这是个键盘按键触发的事件,里面的函数随意填写就好,

接下来从工具箱中拖动一个TextBox到Form1,在右下角的属性栏里,将其重命名为tbTest。别忘了点击一下小闪电左边的小扳手,否则在事件列表中是找不到Name属性的。

接下来点击F7,跳转回C#界面,更改在btnTest_KeyDown这个函数

private void btnTest_KeyDown(object sender, KeyEventArgs e){    tbTest.Text = $"{e.KeyCode}:啊我被按下了";}

其中,$字符串早就讲过了,可以将花括号中的数据转成字符串。e.KeyCode表示按键对应的代码。

因为强迫症的原因,貌似还得新建一个对偶的函数,细节就不赘述了,反正写成如下这样

private void btnTest_KeyUp(object sender, KeyEventArgs e){    tbTest.Text = $"{e.KeyCode}:嘿嘿我又弹起来了";}

效果为

C#中的WinForm框架如何使用

常用控件

在设计界面,Textbox与Label, Button似乎有点区别,即选中之后,其右上角会出现一个三角▶,点击之后会出现一个单选框,内容是多行。

也就是说,正常创建的Textbox是不支持回车换行的,但选择了多行之后,就支持了。

有这种额外内容的控件为数不少,比如ComboBox,下拉选框,将其从工具箱拖动到Form1之后,点击▶,选择编辑项,于是弹出了字符串集合编辑器,按照提示,在里面输入




然后运行程序,可以自行看看效果。

PictureBox,顾名思义是图片箱子,将其拖动到Form1后,同样点击▶->选择图像,会弹出选择资源对话框,选择本地资源->导入,就可以把任何一张图片展示在PictureBox中了。如果图像尺寸不合适,可以将大小模式选为Zoom。

最后,有三个简单控件一直没来得及说,即CheckBox,LinkLabel以及NumericUpDown,这三个控件分别是单选框、链接标签以及数值框。

其中,单选框可以与布尔数据类型相匹配,其属性Checked为布尔数据类型,故常用于表示某种开关;LinkLabel的外表是有下划线像链接一样的Label,但其内在却是个按钮,可以绑定点击事件;NumericUpDown的Value属性为数值类型,常用于设置数值变量。

以上就是关于“C#中的WinForm框架如何使用”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注编程网行业资讯频道。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

C#中的WinForm框架如何使用

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

C#中的WinForm框架如何使用

这篇“C#中的WinForm框架如何使用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“C#中的WinForm框架如何使用”文
2023-07-05

C#中WinForm框架如何使用

在C#中使用WinForm框架可以通过以下步骤:1. 创建一个新的WinForm应用程序项目。2. 打开设计视图,在工具箱中选择所需的控件(如按钮,文本框等)并拖放到窗体中。3. 双击控件,自动生成相应的事件处理程序,并在其中编写逻辑代码。
2023-08-09

一文带你快速学会C#中WinForm框架的使用详解

WinForm是一门非常经济实惠的技术,就是说,可以在短时间内学会,并迅速借此进行项目开发。本文就来和大家聊聊WinForm框架的使用方法,希望对大家有所帮助
2023-02-26

如何使用C++的ORM框架QxORM

这篇文章主要讲解了“如何使用C++的ORM框架QxORM”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何使用C++的ORM框架QxORM”吧!QxORM中,我们用的最多的无非是这两点官方表
2023-07-02

PHP中的CodeIgniter框架如何使用

要使用CodeIgniter框架,您需要按照以下步骤进行操作:1. 下载CodeIgniter框架:您可以从CodeIgniter官方网站(https://codeigniter.com/)下载最新版本的CodeIgniter框架。2. 解
2023-08-25

如何使用C++网络服务框架

这篇文章主要讲解了“如何使用C++网络服务框架”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何使用C++网络服务框架”吧!C++ 是最重要的编程语言之一。它既可以进行、过程化程序设计,又
2023-06-15

Android中如何使用Atlas框架

本篇文章为大家展示了Android中如何使用Atlas框架,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。  Atlas是什么?  Atlas是一个Android客户端容器框架,主要提供了组件化、动态
2023-06-02

Android中如何使用Glide框架

本篇文章为大家展示了Android中如何使用Glide框架,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。加载网络图片引入对应的库compile com.android.support:recycle
2023-06-04

Xamarin.Forms中如何使用OxyPlot框架

小编给大家分享一下Xamarin.Forms中如何使用OxyPlot框架,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!Xamarin图表开发基础教程(7)OxyPlot框架Xamarin.Forms中使用OxyPlot框架
2023-06-04

Python中sqlalchemy框架如何使用

今天就跟大家聊聊有关Python中sqlalchemy框架如何使用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。安装1、安装#进入虚拟环境#执行./python3 -m pip in
2023-06-20

go中如何使用xorm框架

这篇文章主要介绍go中如何使用xorm框架,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、创建数据库连接xorm支持单引擎和多引擎,多引擎的场景对于初学者来说,没有必要考虑,所以我们主要学习的是单引擎的数据库连接,
2023-06-15

python中如何使用Django框架

这篇文章将为大家详细讲解有关python中如何使用Django框架,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。第一步:项目的创建与运行第一次使用 Django ,那么你必须要照顾一些初始设
2023-06-20

Java中PRC框架如何使用

Java中PRC框架如何使用,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。面试题1:说说你对RPC框架的理解?  RPC (Remote Procedure Call)即远
2023-06-20

如何在Dreamweaver中使用框架

今天就跟大家聊聊有关如何在Dreamweaver中使用框架,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。  增加新框架      要给框架页面增加新框架,就是像拆分表格的单元格一样,
2023-06-08

PHP中如何使用 Yii2框架

PHP中如何使用 Yii2框架,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。目录结构├─shopwind------------------------------------
2023-06-20

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录