C#从入门到精通(3)

news2025/3/31 13:44:09

       

目录

第九章  窗体

(1)From窗体   

(2)MDI窗体

(3)继承窗体

第十章 控件

(1)控件常用操作

(2)Label控件

(3)Button控件

(4)TextBox控件

(5)RichTextBox控件

(6)ComboBox控件

(7)CheckBox控件

(8)RadioButton控件

(9)NumericUpDowm控件

(10)ListBox控件

(11)Panel控件

(12)GroupBox控件

(13)TabControl控件

(14)MenuStrip控件

(15)ToolStrip控件

(16)StatusStrip控件

(17)ImageList组件

(18)ListView控件

(19)TreeView控件

(20)DateTimePicker控件

(21)MonthCalender控件

(22)ErrorProvider控件

(23)HelpProvider控件

(24)Timer组件

(25)ProgressBar控件


 本文主要介绍C#的界面开发。观看的视频教程——C#从入门到精通(第6版)_哔哩哔哩_bilibili

        如有时间,推荐观看视频学习。本文主要对其进行总结。

第九章  窗体

        窗体是向用户显示信息的可视化界面。也是windows应用程序的基本单元。每个窗体都有自己的特征,可以通过编程来进行设置。

        窗体一般通过可视化的窗体设计器来进行设计。

(1)From窗体   

1.添加与删除窗体

        添加:右键单击项目,选择添加,选择添加窗体。

        删除:右键单击要删除的窗体,选择删除。

 2.设置启动窗口

        一个项目中有多个窗口,在项目运行时要设置启动窗口。需要在program.cs文件中改变Run方法的参数来设计启动窗口。  

3.设置窗体的属性

窗体图标Icon属性
窗体标题栏FromBorderStyle属性
窗体显示位置StartPositon属性
窗体大小Size属性
窗体背景图片

BackgroundImage属性

控制窗体在最上边TopMost属性

4.窗体常用的方法

        show方法——显示窗体。

        Hide方法——隐藏窗体。

        Close方法——关闭窗体

5.窗体常用的事件

        Load事件——窗体加载时触发。

        FormClosing事件——窗体关闭时触发。

(2)MDI窗体

        多文档界面。用于显示多个文档,每个文档显示在各自的窗口中。MDI窗体通常包换子菜单的窗口菜单,用于在窗口或文档之间进行切换。

1.设置MDI窗体

        MDI窗体中有父窗体和子窗体。

        父窗体设置:在属性中,将IsMdiContainer属性设置为True即可。

        子窗体设置:通过设置MdiParent属性来确定子窗体。(属性中没有这个选项,需要通过代码设置)示例。

   Form2 form2 = new Form2();
   form2.Show();
   form2.MdiParent = this;

2.排列MDI子窗体

        通过使用LayoutMdi方法来排列多文档界面父窗体中的子窗体。例如

  LayoutMdi(MdiLayout.TileHorizontal); //水平排列

  LayoutMdi(MdiLayout.TileVertical);//垂直排列
(3)继承窗体

     将父类窗体的功能继承到子类,提高代码复用率。减少重复代码的编写。

创建继承窗体的两种方法:

        1.修改继承类。在窗体代码中修改窗体继承的类。

        2.使用继承选取器。在添加新建项中选择继承的窗体,选择要继承的对象。(需要先编译一下)。

注意,为从一个窗体继承,包换该窗体的文件或命名空间必须已经编译成可执行文件DLL。   

修改继承窗体的属性

        在父窗体中找到Modifiers属性,修改为public。和类的继承很像(把一个窗口当成一个类就行了)。

第十章 控件

        控件:是带有可视化表示形式的组件。其基类是Control类。

(1)控件常用操作

        添加控件

        1.打开工具箱,选择要添加的控件,拖动到窗口中。

        2.通过代码添加。示例

  TextBox textBox = new TextBox();
  textBox.Location = new Point(10,10);
  this.Controls.Add(textBox);

        对齐控件——选中控件,点击格式中选择要对齐的方式。

        删除控件——选中控件,右击选择删除。

(2)Label控件

        标签控件,用于显示用户不能进行编辑的文本。标识窗体上的对象等。

(3)Button控件

        按钮控件,允许用户通过单击执行操作。既可以显示文本,也可以显示图像。

        常用属性:Text属性用来设置控件的文本。Click事件用来指定Button按钮点击时执行的操作。

(4)TextBox控件

        文本框控件,用于获取用户输入的数据或显示文本。通常用于可编辑文本,也可使其称为只读文本。

        常用属性:

        ReadOnly属性——创建只读文本框。

        PasswordChar属性——创建密码文本框。

        Multiline属性——创建多行文本框。

        TextChanged事件——响应文本框的文本更改事件。

(5)RichTextBox控件

        有格式文本框控件,用于显示、输入和操作带有格式的文本。比如可以实现显示字体、颜色、链接、从文件加载文本及嵌入的图像、撤销和重复编辑操作以及查找指定的字符等功能。

        常用属性:

        ScrollBars属性——显示滚动条。

        SelectionFont属性和SelectionColor属性——设置字体属性。

        Text属性和LinkClicked事件——显示为超链接样式。

        SelectionBullet或SelectionIndent属性——设置段落格式。

示例

    richTextBox1.SelectionFont = new Font("宋体", 12, FontStyle.Bold);
    richTextBox1.SelectionColor = Color.Red;


    richTextBox1.Text = "http://baidu.com"; //超链接
    System.Diagnostics.Process.Start(e.LinkText);

    richTextBox1.SelectionBullet = true; //开头原点
    richTextBox1.SelectionIndent = 50;// 开头间隔
(6)ComboBox控件

        下拉组合框控件,主要用于在下拉组合框中显示数据,该控件主要有两部分组成。第一部分是允许用户输入列表项的文本框。第二部分是一个列表框,显示一个选项列表,用户可以从中选择项。

        常用属性:

        Item属性——用于添加下拉框选择项。

        DropDownStyle属性——设置下拉组合框。

        SelectedIndexChanged事件——响应下拉组合框的选项值更改事件。

(7)CheckBox控件

        复选框控件,用来表示是否选取了某个选项条件,常用于为用户提供具有 是/否的选项。

        常用属性:

        CheckState属性——判断复选框是否选中。

        CheckedChanged事件——响应复选框的选中状态更改事件。

(8)RadioButton控件

        单选按钮事件,为用户提供由两个或多个互斥选项组层的选项集。当用户选中某个单选按钮时,同一组的其他单选按钮不能选。

        常用属性:

        Checked属性——判断单选按钮是否选中。

        CheckedChanged属性——响应单选按钮选中状态更改事件。

(9)NumericUpDowm控件

        数字选择控件,常用于数字的选择。例如选择页码等。

        常用属性:

        Value属性——获取选择的值。

        DecimalPlaces属性——显示小数点后几位。

(10)ListBox控件

        列表控件,它主要用于显示一个列表,用户可以从中选择一项或多项,超出总数,控件会自动添加滚动条。

        常用属性:

        Items属性的Add方法和Remove方法——添加和移除项。

        HorizontalScrollbar属性和ScrollAlwaysVisable属性—— 总显示滚动条。

        SelectionMode属性——选择多个项。

(11)Panel控件

        作用:1.分组窗体中的控件。2.批量控制窗体中的控件的显示与隐藏。

        常用属性:

        Visable属性——用来修改是否显示。

(12)GroupBox控件

        分组框控件,主要为其他控件提供分组,并且按照控件的分组来显示细分窗体的功能。显示边框和标题。

        常用属性:

        Text属性——设置分组框的标题。

(13)TabControl控件

        进行选择的控件,其中可以包含子控件。

        常用操作:

        改变选项卡的显示样式——TabPage对象和ImageList控件结合。

        选项卡添加控件——Controls对象的Add()方法。

        添加、删除选项卡——TabPage属性的Add()方法与Remove方法。

        移除所有选项卡——TabPage属性的Clear()方法。

示例

 tabControl1.ImageList = imageList1; //设置图标
 tabPage1.ImageIndex = 0;
 tabPage2.ImageIndex = 1;

 Button button = new Button(); //添加子控件
 button.Text = "OK";
 tabPage2.Controls.Add(button);

 TabPage tb = new TabPage("新增选项卡"); //添加选项卡
 tabControl1.Controls.Add(tb);

 tabControl1.Controls.Remove(tb);//删除选项卡

 tabControl1.TabPages.Clear(); //清空选项卡
(14)MenuStrip控件

        菜单控件,主要用来设计程序的菜单栏。

(15)ToolStrip控件

        工具栏控件,使用该控件可以创建具有Office、WindowsXP或自定义的外观和行为工具栏及其他用户界面元素。

(16)StatusStrip控件

        状态栏控件,通常放置在窗体的最底部,用于显示窗体上的一些对象的相关信息。或显示应用程序的信息。

(17)ImageList组件

        图片存储组件,主要用于存储图片资源,然后在控件上显示出来,简化了对图片的管理。

        主要属性为Images,关联控件将要使用的图片。图片通过键值或索引值来访问,并且其所有图片将压缩至相同大小显示。由ImageSize属性设置。将较大图片将压缩至适当的尺寸。

        常用属性:

        ColorDepth——获取图像列表的颜色深度。

        Images——获取此图像列表的ImagesList.ImageCollection。

        ImageSize——获取或设置图像列表中的图像大小。

        ImageStream——获取此图像列表关联的ImageListStreamer。

(18)ListView控件

        列表视图控件,它主要用于显示带图标的项列表,其中可以显示大图标、小图标和数据。

        常用方法:

        添加项——Items属性的Add方法。

        移除项——Items属性的Remove方法或Clear方法。

        选择项——Selected属性。

        添加图标——SmallImageList、LargeImageList或StateImageList属性。

        启动平铺视图——View属性。

        项分组——Group属性。

示例:

     listView1.Items[0].Group = listView1.Groups[0];//第一项分到第一组

     listView1.Items[1].Group = listView1.Groups[1];//第二项分到第二组
(19)TreeView控件

        树控件,可以为用户显示节点层次结构,而每个节点又可以包含子节点,包含子节点的节点叫父节点。

        常用方法:

        添加和删除树节点——Nodes属性的Add、Remove方法。

        获取选中节点——AfterSelect事件、Nodes.Text属性。

        为节点设置图标——ImageList、ImageIndex和SelectedImageIndex属性。

(20)DateTimePicker控件

        日期控件。用于显示时间。

        常用属性:

        Foremat属性——设置控件显示日期时间格式。

        CustomFormat属性——自定义显示格式。

        Value属性——获取选中的日期。

示例

   dateTimePicker1.Format = DateTimePickerFormat.Custom;
   dateTimePicker1.CustomFormat = "MMMM dd,yyyy-dddd";

   label1.Text = dateTimePicker1.Value.ToShortDateString();
(21)MonthCalender控件

        月历控件,用于显示日期。

        常用属性:

        ShowWeekNumbers——设置显示外观。

        CalendarDimensions——同时显示多个月份。

        SelectionStart、SelectionEnd——选择日期范围的开始日期、结束日期。(只能选择一周之内的日期范围)。

(22)ErrorProvider控件

        在不打扰用户的情况下向用户显示错误发生。

        常用方法:

        SetError()方法——用于Validating事件中。

(23)HelpProvider控件

        调用帮助文件。

        常用属性和方法:

        HelpNamespace属性——指定帮助文件名。(放在项目debug下可以用相对路径,放在其他位置要用绝对路径)

        SetShowHelp()方法——设置是否显示帮助信息。

(24)Timer组件

        计数器组件,用于定期的引发事件。时间间隔长度有Interval属性定义。其属性值以毫秒为单位。启用该组件,每隔一个时间间隔引发一次Tick时间爱你,开发人员可以再Tick事件添加要执行的代码。

        常用属性和方法:

        Enabled属性——获取或设置计时器是否正在运行。

        Interval属性——获取或设置触发Tick事件的时间间隔。

        Start方法——启动定时器。

        End方法——关闭定时器。

        Tick时间——触发的事件。

(25)ProgressBar控件

        进度条,指示工作的进度。帮助用户观察进度。

        常用的属性:

        Value——进度条进度值。

        Minimum——进度条最小值。

        Maximum——进度条的最大值。

        Step——进度条的步长。

        PerfromStep——每次增加一个步长。

本文主要介绍C#的界面开发。更多详细内容请观看视频。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2323446.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

设计模式之创建型5种

设计模式 为什么设计模式是23种创建型 对象创建为什么设计模式是23种 设计模式之所以被归纳为23种,而非其他数量,源于GoF(Gang of Four)在1994年的系统性总结和分类。这一数量的确定并非偶然,而是基于以下核心原因: 他们遵循“大三律”(Rule of Three),即只有经过三个…

Java + LangChain 实战入门,开发大语言模型应用!

在 Baeldung 上看到了一篇介绍基于 Java LangChain 开发大语言模型应用的基础入门文章,写的非常不错,非常适合初学者。于是,我抽空翻译了一下。 原文地址:https://www.baeldung.com/java-langchain-basics翻译: Java…

Java多线程与高并发专题—— CyclicBarrier 和 CountDownLatch 有什么异同?

引入 上一篇我们了解CountDownLatch的原理和常见用法,在CountDownLatch的源码注释中,有提到: 另一种典型用法是将一个问题分解为 N 个部分,用一个Runnable描述每个部分,该Runnable执行相应部分的任务并对闭锁进行倒计…

leetcode543.二叉树的直径

当前顶点作为拐点时,求左子树加上右子树的高度可以求出该通过该顶点的直径大小,再对该顶点和左右子节点作为拐点时直径大小进行比对,返回最大值 缺点是递归了多次 /*** Definition for a binary tree node.* public class TreeNode {* …

Java EE 进阶:MyBatis案例练习

表白墙 首先我们先准备一下数据库的数据 创建一个信息表 DROP TABLE IF EXISTS message_info;CREATE TABLE message_info (id INT ( 11 ) NOT NULL AUTO_INCREMENT,from VARCHAR ( 127 ) NOT NULL,to VARCHAR ( 127 ) NOT NULL,message VARCHAR ( 256 ) NOT NULL,delete_fla…

路由选型终极对决:直连/静态/动态三大类型+华为华三思科配置差异,一张表彻底讲透!

路由选型终极对决:直连/静态/动态三大类型华为华三思科配置差异,一张表彻底讲透! 一、路由:互联网世界的导航系统二、路由类型深度解析三者的本质区别 三、 解密路由表——网络设备的GPS华为(Huawei)华三&a…

01 相机标定与相机模型介绍

学完本文,您将了解不同相机模型分类、内参意义,及对应的应用代码模型 标定的意义 建模三维世界点投影到二维图像平面的过程。标定输出的是相机模型。 相机模型 相机模型可以解理解为投影模型 +

SICAR标准 汽车焊装生产线触摸屏操作说明

目录 SIMATIC HMI 是西门子工业自动化解决方案的核心组件,支持实时设备监控与交互,文档中展示了其在焊装生产线中以SICAR标准为基础的具体应用,包括车型切换(如 AY2/A26)、KMC 夹具配置及能源效率分析,适用…

Selenium Web自动化如何快速又准确的定位元素路径,强调一遍是元素路径

如果文章对你有用,请给个赞! 匹配的ChromeDriver和浏览器版本是更好完成自动化的基础,可以从这里去下载驱动程序: 最全ChromeDriver下载含win linux mac 最新版本134.0.6998.165 持续更新..._chromedriver 134-CSDN博客 如果你问…

鸿蒙-全屏播放页面(使用相对布局)---持续更新中

最终实现效果图: 实现步骤 创建FullScreenPlay.ets全品播放页面 并将其修改为启动页面。 全屏播放,屏幕必然横过来,所以要将窗口横过来。 编辑 src/main/ets/entryability/EntryAbility.ets 若写在/EntryAbility.ets中,则所有…

全面讲解python的uiautomation包

在常规的模拟鼠标和键盘操作,我们一般使用pyautogui,uiautomation模块不仅能直接支持这些操作,还能通过控件定位方式直接定位到目标控件的位置,而不需要自己去获取对应坐标位置。uiautomation模块不仅支持任意坐标位置截图&#x…

CentOS 7 源码安装libjsoncpp-1.9.5库

安装依赖工具 sudo yum install cmake make gcc cmake 需要升级至 3.8.0 以上可参考:CentOS安装CMakegcc 需要升级至9.0 以上可参考:CentOS 7升级gcc版本 下载源码 wget https://github.com/open-source-parsers/jsoncpp/archive/refs/tags/1.9.5.…

备赛蓝桥杯之第十六届模拟赛第1期职业院校组第五题:回忆画廊

提示:本篇文章仅仅是作者自己目前在备赛蓝桥杯中,自己学习与刷题的学习笔记,写的不好,欢迎大家批评与建议 由于个别题目代码量与题目量偏大,请大家自己去蓝桥杯官网【连接高校和企业 - 蓝桥云课】去寻找原题&#xff0…

Windows下docker使用教程

docker安装 镜像制作镜像加载容器创建更新镜像导出镜像 Windows10安装dockerdocker image制作docker 镜像加载docker 容器创建更新imageimage 导出为.tar文件 #以Windows10 、11为例 linux和Windows区别在于docker安装的程序是哪个操作系统的,后面的内容其实不变 …

Java项目生成接口文档的方案

文章目录 问题:Java项目生成接口文档的方案方案一:Swagger3.0方案二:Apipost两者对比 问题:Java项目生成接口文档的方案 需求 1、需要生成生成时间,作者名称,项目名称,接口名称,请…

案例实践 | 招商局集团以长安链构建“基于DID的航运贸易数据资产目录链”

概览 案例名称 基于DID的航运贸易数据资产目录链 业主单位 招商局集团 上线时间 2024年10月 用户群体 供数用数企业和个人 用户规模 集团内20企业 案例背景 招商局集团深入落实“促进数据高效流通使用、赋能实体经济”精神,深化集团数字化水平&#xff0c…

2025年移动端开发性能优化实践与趋势分析

启动速度优化 本质:缩短首次可见帧渲染时间。 方法: iOS:利用Core ML本地模型轻量化部署,减少云端等待。Android:强制启用SplashScreen API,通过setKeepOnScreenCondition控制动画时长。冷启动需将耗时操…

Docker Compose介绍

基本概念 Docker-Compose是Docker官方的开源项目,负责实现对docker容器集群的快速编排。 可以这么理解,docker compose是docker提出的一个工具软件,可以管理多个docker容器组成一个应用,只需要编写一个YAML格式的配置文件docker…

头歌实践教学平台--【数据库概论】--SQL

一、表结构与完整性约束的修改(ALTER) 1.修改表名 USE TestDb1; alter table your_table rename TO my_table; 2.添加与删除字段 #语句1:删除表orderDetail中的列orderDate alter table orderDetail drop orderDate; #语句2:添加列unitPrice alter t…

算法基础——模拟

目录 1 多项式输出 2.蛇形方阵 3.字符串的展开 模拟,顾名思义,就是题⽬让你做什么你就做什么,考察的是将思路转化成代码的代码能⼒。这类题⼀般较为简单,属于竞赛⾥⾯的签到题(但是,万事⽆绝对&#xff…