.net基础控件的使用
- 格式:docx
- 大小:277.24 KB
- 文档页数:7
一、跳转1. goto例子:int myInteger=5;goto myLabel;myInteger+=10;myLabel: 此处是冒号Console.WriteLine(“myInteger={0}”,myInteger;二、类1. 声明格式:类属性集类的修饰符关键字class 类名继承方式基类名{类的成员} 三、继承Public class A {public A(){……} //A类的构造函数}Public class B : A{ //B是A类派生出来的类public(){……} //B类的构造函数}1. C#语言中只支持单继承,不支持多继承。
2. 子类不能访问基类的私有成员。
3.public class MyInterst{ //父类Public virtual void Interest(){Console.WriteLine(“我的爱好”);Console.Read();}}public class Write: MyInterest{ //父类“兴趣爱好”的子类“爱写作”Public override void Interest(){Console.WriteLine(“写作”);}}三、多态——代码重用1. 例子:Main:MyInterest[]dObj=new MyInterest[4];dObj[0]=new Write();dObj[1]=new toProgram();dObj[2]=new Sing();dObj[3]=new MyInterest();foreach (MyInterest Obj in dObj){Obj.Interest();}return 0;四、接口1. 使用接口必须按照一定规则,否则不能使用。
2. 所有接口成员都是共有的。
声明接口成员时,如果包含修饰符就会出现错误。
3. 接口只能被继承,不能被实例化。
4. 定义方法:interface MyInterface //接口{String STR{ //属性STRget; //属性可读set; //属性可写}void outMETHOD(); //成员方法outMethod}Main中:InheritInterface IInterface = new InheritInterface(); //实例化类对象IInterface.outMethod(); //调用类中方法Console.Read(); //获取输入焦点五、抽象类1. 可以有抽象成员,单不能直接被实例化,并且没有代码体,执行方法在其派生类中实现。
需要继承它对的类来实现它的功能。
2. 定义方法Public abstract class MaxHoam //声明抽象类{//在抽象类中的方法,没有方法体。
Public abstract void MyInfo();}Public class MinHoan:MaxHoan //抽象类的派生类{Public override void MyInfo() //实现抽象类的功能{Console.WriteLine(“嘿,我是hoan”);}}六、域和属性1. 域=成员变量:静态域(属于类,包含static),实例域(属于对象)。
七、异常处理1. 可能导致异常的代码放在try中,发生异常时的执行代码放在catch中,finally中的代码一定会执行,用throw抛出异常。
2. 一个try可以有多个catch,找到第一个之后后面将会被忽略2. 使用方法:Static void DemoCatch(){Try{DemoThrow(); //可能存在的异常}catch(System.ApplicationException ex) //捕获异常{System.Console.WriteLine(ex.ToString()); //抛出异常}catch(System. Exception ex){System.Console.WriteLine(ex.ToString()); //抛出异常}catch(Exception e){Console.Write(e.Message);}Finally{Console.Write(“There is an error!”);}Console.Read();}七、Windows控件MessageBox.Show(“ok”);——弹对话框Console.WriteLine(“ok”);——输出到控制台2.按钮控件(Button)属性:Enable(可用):True/False,False的话就是灰色的不可用按钮;3.文本显示控件(Label)属性:AutoSize:True大小自动,不换行。
方法:button控件控制label内容:label1.text=”登录失败”;4.输入控件(TextBox)属性:PasswordChar(密码显示样式);Mulitiline(多行文本框):True;ReadOnly(只读);注:通常会用数据类型的转换。
Int和Converted.ToInt32是不同的,Int是类型转换,而Converted.ToInt32是内容转换。
5.日期控件(DateTimePicker)获取日期:dateTimePicker1.Value.ToString();截取日期不要时间:dateTimePicker1.Value.ToString().Substring(0,10); 6.进度条控件(ProgreBar)属性:设置最大值Maximum最小是Minimum,增长值是Value,步长Step。
ProgressBar1.Minimum=1;//进度栏最小值ProgressBar1.Maximum=1000;//进度栏最大值For(int i=1;i<1000;1++){ProgressBar1.value=i; //更新进度栏的值}7.列表控件(ListBox)——显示较长的文件列表,可多选属性:SelectionMode:MultiExtended时,可多选。
SelectedItem选取项添加项:listBox1.Items.Add(“选项1”);//为列表添加选项节点层次结构(TreeView)——每个节点都有展开和折叠的方式。
属性:ShowPlusminus设置是否在展开后显示加减号。
ShowLine设置同级或节点间是否有虚线连接。
SelectNodes当前选中的节点。
treeView1.ExpandAll();//全部展开8.公共对话框保存文件对话框(SaveFileDialog)打卡文件对话框(OpenFileDialog)方法:可设置文件过滤器,简单的过滤器字符串如Text其他对话框(MessageBox):MessageBox.show( )——有很多重载方法。
MessageBoxIcon常用的枚举值:9.菜单和工具栏快捷菜单控件(ContexMenuStrip):弹出式菜单控件,用来指定右键时显示的快捷键。
步骤:①添加控件;②点击Item属性,在窗体内设置菜单项;③选中要使用控件的窗体或控件,将其ContexMenuStrip的属性设置成第一步中添加的控件名称。
工具栏控件(ToolStrip):其他菜单和状态栏控件:NotifyIcon、状态栏等。
如软件版本等信息的显示。
10.容器用于容纳和布置其他控件,容器控件主要有FlowLayoutPanel、GroupBox、panel、splitContainer、tabControl等。
流布局控件(FlowLayoutPanel):水平或垂直方向排列内容。
下一列。
属性:将FlowBreak设置为True,会停止在当前方向布局换到下一行或下一列。
将AutoSize设置为True,会自动调整大小容纳内容。
分隔条控件(splitContainer):可移动的拆分条和其分割的两个面板组成。
选项卡控件(tabControl):默认是两个标签。
右键选择属性,可添加多个选项卡标签和修改标签名称。
其他容器控件(panel、GroupBox等):panel用于提供其他控件识别分组,GroupBox也用于分组。
只有GroupBox控件可以显示标题,而Panel控件可以有滚动条.11.组件包括:backgroundWorker、directoryEntry、directorySearcher、errorProvider、helpProvider等。
帮助文档组件(helpProvider):Tag和HelpNamespace用于指定HelpProvider 控件关联的帮助文件名称,建议使用相对路径,较少使用绝对路径。
定时器组件(Timer):Tick事件,该事件在指定计时器间隔已过去而且计时器处于启动状态时发生。
Private void timer1_Tick(object sender,EventArgs e){String strTime=”现在时间为:”+DateTime.Now.ToString();}其他组件:serviceContrller——将操作请求传递给服务控制管理器,而不是服务本身,能请求控制管理器的停止,启动和暂停等。
示例参考demo和demo2八、Windows部署1. Windows窗体程序有两种部署方式:ClickOne和WindowsInstaller。
ClickOne部署,发布到web服务器或者网络文件中共享,以简化安装过程,推荐使用。
可自动更新,替换更新文件。
WindowsInstaller部署,允许创建安装程序包以分发给用户,用户运行安装文件。
友情提示:demo和demo2的代码可从云盘中下载,地址如下。
链接:/s/1hqGgmgc密码:avi8(完)。