WinForm3、数组、流程控制和WinForm基本控件
- 格式:pptx
- 大小:379.49 KB
- 文档页数:36
winform教程WinForm(Windows Forms)是微软基于.NET Framework开发的一种用户界面设计工具。
它使用了传统的窗体、标签、按钮等控件来创建GUI界面,是使用C#或语言开发桌面应用程序的一种方式。
WinForm教程1. 创建新的WinForm应用程序项目打开Visual Studio,在菜单栏中选择“文件”->“新建”->“项目”,选择“Visual C#”或“Visual Basic”下的“Windows”或“Windows经典桌面”类别,在右侧选择“Windows Forms应用程序”。
输入项目名称,选择存储路径,点击“确定”按钮创建新的WinForm应用程序项目。
2. 设计界面在Visual Studio的设计器中,可以通过拖拽控件来设计界面。
常用的控件包括标签(Label)、文本框(TextBox)、按钮(Button)、列表框(ListBox)等。
选择相应的控件,在窗体上拖拽并调整位置和大小。
可以使用属性窗口来设置控件的属性,例如文本、字体、大小等。
3. 添加事件处理程序在WinForm应用程序中,控件的各种操作通常需要绑定相应的事件处理程序。
例如,当按钮被点击时,需要执行相应的代码。
在设计器中,选择要添加事件处理程序的控件,在属性窗口的“事件”标签页中选择相应的事件,双击后会自动创建事件处理程序并打开代码编辑器。
4. 编写业务逻辑通过代码编辑器,可以编写业务逻辑代码。
例如,在按钮的点击事件处理程序中,可以编写代码来实现具体的功能,如弹出消息框、读取文本框的内容等。
通过使用.NET Framework提供的类库,可以实现各种功能,如数据访问、文件操作、网络通信等。
5. 调试和运行应用程序在编写完业务逻辑代码后,可以通过单击“开始调试”按钮或按下F5键来调试和运行应用程序。
在调试过程中,可以使用调试工具来检查代码执行的情况,并进行逐行调试。
6. 发布应用程序当应用程序开发完成后,可以将其发布为独立的可执行文件。
Winform⼊门关于winForm开发说明【1】应⽤集中性:国内的C#上位机开发,HIS,ERP,MRP,⼆次开发,GIS等,⼏乎都是C#开发的!【2】学习必要性:是.NET平台和⾮.NET平台最早出现的,学好C#开发的必备。
1.项⽬UI设计【1】C/S项⽬:⾸选是Winform原⽣控件(简单实⽤,但效果不太美观),直接拖放控件第三⽅控件库:免费的控件库WPF(界⾯设计上是最漂亮的,但是,学习成本较⾼)⾃⼰动⼿设计UI:⾃定义控件(局限性:屏幕⾃适应较差)【2】B/S项⽬:HTML5原⽣设计(CSS+DIV)太⿇烦,但是性能⾮常⾼!jQueryUI,Extjs,EasyUI....BootStrap框架(响应式设计,⾮常流⾏)LayUI框架(学习简单,上⼿快,效果好,⼀般后台应⽤较多)2.常见的项⽬类型【1】控制台程序(主要是学习使⽤)【2】WinForm程序(Window程序,桌⾯程序,C/S程序,客户端程序)【3】Web程序和分布式服务程序(-webform,-mvc,webservice,webapi,wcf)3.不同项⽬部署差异【1】Winform程序:我们.NET开发程序,可以直接把⽣成的⽂件拷出来就能⽤了。
不需要单独的安装包,我们打包程序仅仅是把程序模块集中到⼀起⽽已,对注册表没有任何的修改。
部署:第⼀,如果有数据库,数据库会在专门的服务器上。
第⼆,应⽤程序,在独⽴的客户端电脑上。
(通常会有多个客户端)第三,项⽬升级服务器。
【2】Web程序:我们开发的程序,通常只有⼀个服务器,通过IIS部署到服务器上,客户端其实就是浏览器。
部署:第⼀,数据库通常是独⽴的服务器。
第⼆,应⽤程序,在独⽴的服务器上。
4.Winform程序设计【1】项⽬结构1.Properties⽂件夹:AssemblyInfo程序集信息的配置类(通常项⽬正式发布后,存储项⽬版本版权项⽬相关信息)2.窗体⽂件Form1包括:Form1.csForm1.Desinger.cs两个类的定义:public partial class Form1 : Form (双击窗体){public Form1(){InitializeComponent();}}partial class Form1{//其他内容省略}结论:两个类的类名是完全⼀样的。
bel标签1).说明Label标签用于显示字符或者提示作用.2).设置其文本内容lblArea.Text = area.ToString(); /* lblArea 为控件名字*/2.ToolTip控件1).说明ToolTip用于提示与指定控件相关的文本.当鼠标位于某控件时便会显示提示文本. 2).设置提示文本this.toolTip.SetToolTip(this.tbar, this.tbar.Value.ToString());说明:1)toolTip为该窗体上的ToolTip控件的名字;2)tbar为关联的控件的名字;3)函数第一个参数为关联的控件,第二个参数为提示文本.3.Timer控件1).说明Timer控件为定时器,用于设定的时间间隔来响应相应的操作.2).时间间隔设置在属性面板中,Interval属性用于设置时间间隔,单位为毫秒(ms).3).常用数据成员及成员函数1.启用定时器:成员函数Start;2.停用定时器:成员函数Stop;4.TextBox控件1).说明TextBox为编辑框,用来输入数据.2).常用成员函数及数据成员1.Text:获取或设置当前TextBox中的文本,返回类型为string;2.Focus():设置焦点位于当前TextBox控件上;3.SelectAll():选中编辑框中的全部内容.5.TrackBar控件1).说明TrackBar控件为滚动条,通过滑动来调节数据大小.2).属性设置通过Orintation属性来设置控件的方向,可以是水平方向(Horizontal)也可以是竖直方向(vertical);通过Maximum设置其最大值;通过Minimum设置其最小值.控件的Anchor属性表示大小改变时候伸张的方向.3).常用成员函数及数据成员1.Value:通过数据成员Value可以返回当前滚动条的数值;2.Enabled:该值设置为False则该控件处于灰选状态;boBox控件1).说明ComboBox控件为下拉列表框,用于选择需要的数据.2).属性设置1.Items:编辑此属性可以设置列表框中选项内容;2.DropDownStyle:此属性设置下拉列表框样式.设置为DropDown时,则即可以从下拉列表中选择又可以进行编辑;设置为DropDownList时只能进行选择;3).常用数据成员及成员函数1.SelectedIndex:设置或获取选中内容的索引,从0开始;2.Text:设置或获取控件要显示的内容;3.Items:列表框中所包含所有项的集合.Items.Add()用于添加一个数据项;Items.Remove()用于添加一个数据项;Items.Clear()清空所有数据项;items.count获取数据项数目.4.Focus():设置焦点;4).使用示例this.cboRole.Items.Add("管理员"); /*向列表框cboRole添加一个数据项*/this.cboRole.SelectedIndex = 0; /*设置选中第一个数据项*/this.cboRole.Focus(); /*设置焦点*/绑定DataTable:this.cbox_Servicer.DataSource = ds.Tables[0];this.cbox_Servicer.DisplayMember = "姓名";7.MenuStrip控件1).说明1.MenuStrip控件为菜单栏控件.如果要显示菜单项之间的分隔符,则在键入文本处输入“-”符即可;2.MdiWindowListItem用来指定显示MDI窗口列表的项.右图为将该项指定为菜单项“窗口”后的效果,此时所有打开的子窗口都可以在菜单项“窗口”下拉中看到.从右图的窗口可以看出已经打开的子窗口有“用户管理”及“部门管理”两个子窗口.3.8.Panel控件1).说明Panel控件用于绘图或者显示图片等功能.2).常用成员函数及数据成员①添加控件将动态生成的控件添加到面板中:this.panContainer.Controls.Add(picTemp); panContainer为Panel控件名称.9.ErrorProvider控件1).说明ErrorProvider控件用来提示错误信息,通过与其它控件绑定来使用.2).常用成员函数及数据成员1.SetError():设置指定控件的错误描述字符;2.BlinkRate:获取或设置闪烁速率;3.Icon:设置错误提示图标;3).使用示例this.errorProvider.SetError(this.cboRole, "请输入工号!"); /* cboRole 为控件Name*/ this.errorProvider.SetError(this.cboRole, ""); /*取消cboRole 控件的错误提示*/10.ListView控件1).常用操作1.清空操作this.lvUsers.Items.Clear(); /*清空所有记录*/this.lvUsers.Clear(); /*清空整个列表(包括表头)*/注:lvUsers为ListView控件Name2.添加新的记录每一项包含ID及密码两个子项(roleID为int型,rolePassword为string型)ListViewItem lvItem = this.lvUsers.Items.Add(roleID.ToString());lvItem.SubItems.Add(rolePasswrd);3.判断是否有选中项通过数据成员SelectedItems来判断.使用示例如下:this.lvUsers.SelectedItems == null;或者this.lvUsers.SelectedItems.Count == 0 ; /*选中项数*/4.获取选中项内容下面以选中一项时为例,每一个列表项有ID和Password两个子项.ListViewItem selectedItem = this.lvUsers.SelectedItems[0];int userID = int.Parse(selectedItem.SubItems[0].Text);string password = selectedItem.SubItems[1].Text;5.添加表头this. lvUsers.Columns.Add("课程"); /*在表头添加一个列*/注:如果此时ListView控件的”VIew”属性不是”Details”还需要增加语句:this. lvUsers.View = View.Details;2).显示图片列表添加一个Listview控件及一个ImageList控件。
1、窗体 (2)2、Label 控件 (4)3、TextBox 控件 (4)4、RichTextBox控件 (6)5、NumericUpDown 控件 (7)6、Button 控件 (8)7、GroupBox 控件 (8)8、RadioButton控件 (8)9、CheckBox 控件 (9)10、ListBox 控件 (9)11、ComboBox 控件 (11)12、CheckedListBox 控件 (11)13、PictureBox 控件的使用 (11)14、Timer 控件 (12)15、ProgressBar控件和TrackBar控件 (12)16、HScrollBar 控件和VScrollBar控件的使用 (14)17、OpenFileDialog 控件 (14)18、SaveFileDialog 控件 (15)19、FontDialog 控件 (15)20、ColorDialog控件 (15)21、PrintDialog控件和PrintDocument 控件 (16)22、用户自定义对话框 (16)23、菜单控件 (16)25、MDI 应用程序设计 (17)26、键盘事件处理 (18)27、鼠标事件处理 (19)28、排列窗体上的控件 (19)1、窗体1、常用属性(1)Name属性:用来获取或设置窗体的名称,在应用程序中可通过Name属性来引用窗体。
(2)WindowState属性:用来获取或设置窗体的窗口状态。
取值有三种:Normal (窗体正常显示)、Minimized(窗体以最小化形式显示)和Maximized(窗体以最大化形式显示)。
(3)StartPosition属性:用来获取或设置运行时窗体的起始位置。
其取值及含义如表9-1 所示。
默认的起始位置是WindowsDefaultLocation。
(4)Text属性:该属性是一个字符串属性,用来设置或返回在窗口标题栏中显示的文字。
1.数据显示:DataGridView(DataGridView 控件提供用来显示数据的可自定义表。
使用 DataGridView 类,可以自定义单元格、行、列和边框)。
文本编辑:TextBox(显示设计时输入的文本,它可由用户在运行时编辑或以编程方式更改)。
RichTextBox(使文本能够以纯文本或 RTF 格式显示)。
MaskedTextBox(约束用户输入的格式)。
2.信息显示:Label(显示用户无法直接编辑的文本)。
LinkLabel(将文本显示为 Web 样式的链接,并在用户单击该特殊文本时触发事件。
该文本通常是到另一个窗口或网站的链接)。
StatusStrip(通常在父窗体的底部使用有框架的区域显示有关应用程序的当前状态的信息)。
ProgressBar(向用户显示操作的当前进度)。
3.从列表中选择:CheckedListBox(显示一个可滚动的项列表,每项旁边都有一个复选框)。
ComboBox(显示一个下拉式项列表)。
DomainUpDown(显示用户可用向上和向下按钮滚动的文本项列表)。
ListBox(显示一个文本项和图形项(图标)列表)。
ListView(在四个不同视图之一中显示项。
这些视图包括纯文本视图、带有小图标的文本视图、带有大图标的文本视图和详细信息视图)。
NumericUpDown(显示用户可用向上和向下按钮滚动的数字列表)。
TreeView (显示一个节点对象的分层集合,这些节点对象由带有可选复选框或图标的文本组成)。
4.图形显示:PictureBox(在一个框架中显示图形文件(如位图和图标)。
5.图形存储:ImageList(充当图像储存库。
ImageList 控件和及其包含的图像可以在不同的应用程序中重用)。
6.值的设置:CheckBox(显示一个复选框和一个文本标签。
通常用来设置选项)。
CheckedListBox(显示一个可滚动的项列表,每项旁边都有一个复选框)。
winform 列表用法WinForm中的列表控件是一种常用的数据展示工具,它可以让用户方便地查看和管理数据。
本文将介绍WinForm列表控件的用法,包括列表控件的概述、基本操作、常用属性、事件处理等方面的内容。
一、列表控件概述WinForm中的列表控件是一种常用的数据展示工具,它可以将数据以列表的形式呈现给用户,方便用户进行查看和操作。
常见的列表控件包括ListBox、CheckedListBox、TreeView等。
这些控件通常用于展示一系列可选项,用户可以通过选择或取消选择来操作数据。
二、基本操作1. 添加数据:使用Add方法向列表中添加数据,可以一次添加多个数据。
2. 删除数据:使用Remove方法从列表中删除数据。
3. 替换数据:使用Clear方法清除列表中的所有数据,然后使用Add方法添加新的数据。
4. 循环遍历:可以使用foreach循环遍历列表中的数据。
5. 选中项:可以使用Select方法选中指定的项,也可以使用Clear方法取消选中所有项。
三、常用属性1. ListItems:包含列表中的所有项的集合,可以通过此属性访问和修改列表中的数据。
2. SelectedItems:包含被选中的项的集合,可以通过此属性获取当前选中的项。
3. MultiSelect:指定是否允许多选和单选,多选时可以使用SelectedIndices属性获取选中项的索引。
4. View:指定列表的视图模式,包括无视图、无选定项、项目视图等。
5. Location:指定列表的位置和大小,可以根据需要调整。
四、事件处理1. SelectedIndexChanged事件:当选中项的索引发生变化时触发该事件。
可以使用该事件来响应用户的选中操作,例如更新界面或执行相应的操作。
2. KeyDown事件:当用户在列表上按下键盘按键时触发该事件。
可以使用该事件来响应用户的键盘操作,例如通过快捷键切换选中项。
3. DropDown事件:当下拉列表展开时触发该事件。
C#中常见的winform控件命名规范我们知道Button 常常简称为btn,那么Winform中的其它控件呢,这篇⽂章在的基础上对⼀些控件的名称的简称进⾏了整理。
1. 标准控件NO.控件类型简写控件类型1btn Button2chk CheckBox3ckl CheckedListBox4cmb ComboBox5dtp DateTimePicker6lbl Label7llb LinkLabel8lst ListBox9lvw ListView10mtx MaskedTextBox11cdr MonthCalendar12icn NotifyIcon13nud NumeircUpDown14pic PictureBox15prg(pgb)ProgressBar16rdo RadioButton17rtx RichTextBox18txt, tb TextBox19tip ToolTip20tvw TreeView21wbs WebBrowser2. 容器控件序号控件类型简写控件类型1flp FlowLayoutPanel2grp GroupBox3pnl Panel4spl(spc)SplitContainer5tab TabControl6tlp TableLayoutPanel3.菜单和⼯具栏序号控件类型简写控件类型1cms ContextMenuStrip1cms ContextMenuStrip 2mns MenuStrip3ssr StatusStrip4tsr ToolStrip5tsc ToolStripContainer 4.数据序号控件类型简写控件类型1dts DataSet2dgv DataGridView3bds BindingSource4bdn BindingNavigator5rpv ReportViewer5.对话框序号控件类型简写控件类型1cld ColorDialog2fbd FolderBrowserDialog 3fnd FontDialog4ofd OpenFileDialog5sfd SaveFileDialog6.组件序号控件类型简写控件类型1bgw BackgroundWorker 2dre DirectoryEntry3drs DirectorySearcher 4err ErrorProvider5evl EventLog6fsw FileSystemWatcher 7hlp HelpProvider8img ImageList9msq MessageQueue10pfc PerformanceCounter 11prc Process12spt SerialPort13scl ServiceController 14tmr Timer7.印刷序号控件类型简写控件类型1psd PageSetupDialog2prd PrintDialog3pdc PrintDocument4prv PrintPreviewControl 5ppd PrintPreviewDialog 8.⽔晶报表序号控件类型简写控件类型1crv CrystalReportViewer 2rpd ReportDocument9.其他序号控件类型简写控件类型1dud DomainUpDown2hsc HScrollBar2hsc HScrollBar 3prg PropertyGrid 4spl Splitter5trb TrackBar6vsc VScrollBar 10. 另⼀个版本序号控件类型控件类型简写标准命名举例1Label lbl lblMessage 2LinkLabel llbl llblToday3Button btn btnSave4TextBox txt txtName5MainMenu mmnu mmnuFile6CheckBox chk chkStock7RadioButton rbtn rbtnSelected 8GroupBox gbx gbxMain9PictureBox pic picImage10Panel pnl pnlBody11DataGrid dgrd dgrdView12ListBox lst lstProducts 13CheckedListBox clst clstChecked 14ComboBox cbo cboMenu15ListView lvw lvwBrowser 16TreeView tvw tvwType17TabControl tctl tctlSelected 18DateTimePicker dtp dtpStartDate 19HscrollBar hsb hsbImage 20VscrollBar vsb vsbImage 21Timer tmr tmrCount22ImageList ilst ilstImage23ToolBar tlb tlbManage 24StatusBar stb stbFootPrint 25OpenFileDialog odlg odlgFile26SaveFileDialog sdlg sdlgSave27FolderBrowserDialog fbdlg fgdlgBrowser 2828FontDialog fdlgFoot ColorDialog cdlgColorPrintDialog pdlgPrint。