《C#基本控件用法.doc》由会员分享,可在线阅读,更多相关《C#基本控件用法.doc(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、作者:曾立波、陈华生、王俊凡,转载请注明出处。1 Button用法与DELPHI中的BUTTON的用法相似,要注意的属性如下BackColor 背景颜色DialogResult 点击返回的DialogResult的值(None,OK,Cancel,Abort,Retry,Ignore,Yes,No)FlatStyle 设置按钮的样式Image 添加图片(注意图片的ImageIndex)AlignImage 图片在按钮中的显示位置TextAlign 文字在按钮中的显示位置Tag 可以在按钮中添加对象事件主要是用Click事件(当BUTTON获得焦点,按Enter时也会触发) 注意:如果在按钮上单
2、击了鼠标左键,然后把鼠标移动到其他位置,再释放鼠标,将不会引发Click事件可以在按钮中添加自定义事件private void btnSample_Click_111(object sender, EventArgs e) if (sender is Button) MessageBox.Show(this is button); 调用btnSample.Click += btnSample_Click_111;2 CheckBox用法与DELPHI中CheckBox的用法相似,要注意的属性如下:CheckState 其中有3种状态(Checked,Unchecked,Indeterminat
3、e) 当状态是Indeterminate时,控件旁边的复选框是灰色的,表示复选框的当前值是无效的ThreeState 是否允许显示CheckState中的Indeterminate状态 CheckState = True 时允许存在Indeterminate状态CheckState = False 时不允许存在Indeterminate状态用户不能把CheckState设置为Indeterminate,但可以在代码中把CheckState设置为Indeterminate 注意的事件CheckedChangeed 当复选框的Checked属性发生改变时,就引发该事件。(注意:当ThreeStat
4、e属性为true时,单击复选框不会改变Checked属性,也就不会引发此事件。在复选框从Checked变为indeterminate状态时,就会出现这种情况)CheckedStateChanged 当CheckedState属性(Checked,UnChecked这种状态)改变时,引发该事件3 ComboBoxDock 控件的位置控制(Top,Left,Right,Bottom, Fill,None)DropDownStyle 控件的下拉样式(Simple,DropDown,DropDownList)FlatStyle 设置控件的样式Tag 可以绑定对象Items 可以能过Add与Insesr
5、t方法增加到ITEMS(Add 添加项到最后一项,Insert方法可以插入到任何位置)DataSource 数据源绑定。DisplayMember 在ComboBox中显示的值(Name)ValueMember 在ComboBox中显示的值对应的隐藏值(ID)通过DataSource,DisplayMember,ValueMember三个属性可以实现自动把数据集添加到ComboBox中 private void FillComboBox(ComboBox cbx) string SQLText = string.Empty; SQLText = select distinct USER_RIG
6、HT_ID,USER_RIGHT_NAME from NT_USER_RIGHT + where UP_RIGHT_ID is null ; DBAccess DBQuery = new DBAccess();DataTable ds = new DataTable(); ds = DBQuery.QueryResultDataTable(SQLText); /取得数据到DS中 自定义的方法 DataRow dr = ds.NewRow(); /新增一条记录 drUSER_RIGHT_ID = 0; drUSER_RIGHT_NAME = ; ds.Rows.InsertAt(dr, 0);
7、/插入数据到数据表DS中 cbx.DataSource = null; /清除所有项目 cbx.DataSource = ds; cbx.DisplayMember = USER_RIGHT_NAME; cbx.ValueMember = USER_RIGHT_ID; /定位记录到权限ID=11 cbx.SelectedValue=11; boBox1.Items.Clear(); /清除所有选项 如绑定数据此方法无效 /应用comboBox1.DataSource = null; boBox1.Items.Insert(0, 请选择); boBox1.Items.Insert(1, a1);
8、 boBox1.Items.Add(a6); boBox1.Items.Add(a7); 4 Label用法与DELPHI中的Label用法相似,要注意的属性如下:FlatStyle 设置LABEL的显示样式Image 设置图片ImageList 设置图片,通过ImageIndex来设置图片ImageAlign 图片在Label中的显示位置 ContextMenuStrip 右键菜单TextAlign Label中的文字显示位置Dock 控件的位置设置5 TextBox用法与Delphi中的Edit控件的用法相似,要注意属性如下CharacterCasing 表示TextBox是否改变输入的文
9、本的大小写。Lower: 文本框中输入的所有文本都转换为小写Normal: 不对文本进行任何转换Upper: 文本框中输入的所有文本都转换为大写MaxLength 指定输入到TextBox中的文本的最大字符长度。 设置为0,表示最大字符长度仅受限于可用的内存Multiline 表示该控件是否是一个多行控件。如果Multiline属性设置为true,通常也把WordWrap也设置为trueWordWrap 指定在多行文本框中,文本是否应自动换行PasswordChar 指定是否用密码字符替换在单行文本框中输入的字符。如果Multiline 属性为true,这个属性就不起作用ReadOnly 表示
10、文本是否为只读ScrollBars 指定是否显示滚动条SelectedText 选择的文本6 DateTimePicker用法主要是要关注Format属性,如果设置成Custom,则DateTimePicker的日期格式根据CustomFormat的格式定,如yyyy-MM-dd hh:mm:ss;7 Panel用法与Delphi中Panel用法相似 应注意的属性如下ContextMenuStrip 右键菜单BackColor 背景颜色Dock 控件的位置控制(Top,Left,Right,Bottom, Fill,None)8 TabControl用法与Delphi中的PageControl
11、相似,应注意的属性如下Alignment控制标签在TabControl控件的什么位置显示。默认的位置为控件的顶部Appearance控制标签的显示方式。标签可以显示为一般的按钮或带有平面样式HotTrack 设置为true,则当鼠标指针滑过控件上的标签时,其外观就会改变Multiline 设置为true,就可以有几行标签TabPages这是控件中的TabPage对象集合。使用这个集合可以添加和删除TabPage对象9 LisiBox用法9.1 控件用途:用于显示多个数据,以供选择.9.2 使用效果: 9.3 控件主要属性说明和使用:ContextMenuStrip: 用于绑定右键菜单DispL
12、ayMember: 显示名称Dock: 设置控件的自适应.Items :增加结点 listBox1.Items.Add(aa); DataSource:用于绑定数据库listbox1.DataSource=ds.Tables0.DefaultView; /ds是DATASETlistbox1.DisplayMember=姓名;listbox1.ValueMember=員工編號; Sorted: 排序10 ListView用法10.1 控件用途: 控件可以以列表的形式显示数据,也可以以结点的形式,显示数据.10.2 使用效果:以列表的形式显示: view属性要设置为Details 以结点的形式显
13、示: view属性要设置为LargeIcon或者SmallIcon 10.3 控件主要属性说明和使用:CheckBoxes:把CheckBoxes置为TRUE 会出现勾选框.Dock: 设置控件的自适应.Columns: 增加列,一般静态加GridLine: 设置为TRUE显示成格子,否则看不到格子的线.HideSelection: 设置为False 显示查询列SmallimageList 增加一个imageList.通过ImageIndex设置结点的图标Items 控件结点.通过这个属性向控件增加结点. for (int i = 0; i 8; i+) /增加八行 listview.Item
14、s.Add(数据1+ i.ToString(); /增加一行 listview.Itemsi.ImageIndex=i+1; /行的第一个结点设置图标 listview.Itemsi.SubItems.Add(数据2); /增加行的第二个结点 listview.Itemsi.SubItems.Add(数据3); /增加行的第三个结点 如果view属性要设置为Details就有行的概念,如果设置为LargeIcon或者SmallIcon则界面显示就没有行的概念,但数据存储两种都一样.imageList: 增加一个imageList.通过ImageIndex设置结点的图标 Sorting: 排序1
15、1 Treeview用法11.1 控件用途: 树形显示控件,用于表现数据的层次结构.1.1 表现效果11.2 控件主要属性说明和使用:CheckBoxes:把CheckBoxes置为TRUE 会出现勾选框.Dock: 设置控件的自适应.HideSelection: 设置为False 显示查询列imageList 增加一个imageList.通过ImageIndex设置结点的图标Nodes 树控件结点.通过这个属性向控件增加结点. 第一层结点:treeView1.Nodes.Clear(); /清除控件结点/新增一个结点,其中ds.Tables0.Rowsi1.ToString()为结点的显示值
16、RightObjClass1 RightObj = new RightObjClass1(); /新建对象 TreeNode tn = new TreeNode(ds.Tables0.Rowsi1.ToString(); tn.Tag = RightObj; /结点是通过Tag来增加挂对象的, RightObj为对象 tn.ImageIndex = 1; /设置结点图标 this.treeView1.Nodes.Add(tn); 把结点增加到TreeView里边 第二层结点 /新增一个结点 TreeNode tn2 = new TreeNode(ds.Tables0.Rowsj1.ToStri
17、ng(); RightObjClass1 RightObj1 = new RightObjClass1(); tn2.Tag = RightObj1; tn2.ImageIndex = 2; tn.Nodes.Add(tn2); /把结点挂在第一层结点上 ShowLines 显示树前面的连线.12 DataGrid用法12.1 控件用途:数据的显示控件,以便与从整体来查看数据.可以与DATASET里的数据表和和内存表进行绑定.12.2 6.2使用效果:12.3 控件主要属性说明和使用:AllowSorting: 排序,点击列头,数据会跟据选定列自动排序.AlternationBackColor
18、: 可以理解为偶数行的行颜色BackColor: 可以理解为单数行的行颜色BackgroudColor: 背景颜色,没有加载数据区域的颜色CaptionText: DataGrid的总标题,用于描述DataGrid总体情况. CaptionVisible: 是否显示上面的标题CaptionBackColor:标题颜色ColumnHeadersVisible: 列头是否显示.ConTextMenuStrip:关联右键菜单HeaderBackColor: 列头颜色RowHearerVisible 行头是否可见DataSource :用于绑定数据源.直接与DATASET进行绑定如下this.data
19、Grid1.DataSource = ds.Tables0;与内存表绑定: DataTable dt = new DataTable(Table1); dt.Columns.Add(菜单Id, typeof(decimal); dt.Columns.Add(菜单名称, typeof(string); dt.Columns.Add(备注, typeof(string); RightObjClass1 obj = (RightObjClass1)e.Node.Tag; dt.Rows.Add(obj.SRightId, obj.SRightName, obj.SRemark); /内存表增加列 d
20、ataGrid1.DataSource = dt; /绑定13 Dialog用法13.1 控件用途: 包括openDialog, SaveDialog,ColorDialog用法. openDialog打开一个打开文件对话框,用于打开文件. SaveDialog打开一个保存对话框. ColorDialog打开一个颜色选择框.13.2 控件主要属性说明和使用: ShowDialog:打开对话框 FileName : 文件全部路径SafeFileName: 文件名/openDialog, SaveDialog对话框if (openFileDialog1.ShowDialog() = DialogR
21、esult.ok) textBox1.Text = openFileDialog1.FileName; else textBox1.Text = ; /颜色选择框 /ColorDialog colorDialog1 = new ColorDialog(); colorDialog1.FullOpen = true; /是否显示ColorDialog有半部分,运行一下就很了然了 /colorDialog1.CustomColors = color;/设置自定义颜色 DialogResult result = colorDialog1.ShowDialog(); if (result = Dial
22、ogResult.OK)/确定事件响应 listview.BackColor = colorDialog1.Color; if (result = DialogResult.Cancel)/取消事件响应 14 hashTable用法14.1 控件用途:用于保存数据.主要是把类存放在里面,通过索引值能快速的查找出来.14.2 控件主要属性说明和使用: 引用包: using System.Collections; /新建一个Hash表Hashtable hTable = new Hashtable(); hTable.Add(RightObj.SRightId, RightObj.SRightNa
23、me); /增加数据,参数可以是类对象 /Hash表取值 ,遍历 foreach (DictionaryEntry de in Htable1) / MessageBox.Show(de.Key.ToString();/de.Key对应于key/value键值对key ComPid.Items.Add(de.Value.ToString();/de.Key对应于key/value键值对value hTable.Remove(003); / /在哈希表中去除keyvalue是003键值 hTable.Clear(); /清空所有数据hTable.Contains(key); /通过Key进行查找
24、15 控件PictureBox用法15.1 动态载入文件 /自动伸缩pictureBox1.SizeMode = PictureBoxSizeMode.StretchImage;/载入文件pictureBox1.Load(sFileName);15.2 在pictureBox上画图 private void pictureBox1_Paint(object sender, PaintEventArgs e) Graphics g = e.Graphics; g.DrawLine(new Pen(Color.Blue, 3), new Point(0, 0), new Point(100, 10
25、0); 如果不在Paint中画图,如果窗体重画,原先画的图将不复存在16 控件MenuTrip用法 MenuTrip是弹出菜单,假设我要按一个button实现弹出菜单,可以使用以下代码 private void button1_Click(object sender, EventArgs e) Point pt = new Point(); pt = button1.Parent.PointToScreen(button1.Location); pt.Y = pt.Y+button1.Height; contextMenuStrip1.Show(pt); 17 MdiForm的使用方法 要在程
26、序中使用MdiForm,首先主窗体的IsMdiContainer必须设置成true 主窗体显示MDI窗体的代码如下: CustomCtlFrm tmpFrm = new CustomCtlFrm(); tmpFrm.MdiParent = this; tmpFrm.Show(); 主窗体枚举MDI窗体代码如下: for (int i = 0; i this.MdiChildren.Count(); i+) Form tmpFrm = this.MdiChildreni; 18 List的用法class CCustom private int _iCustomId; public int iCu
27、stomId get return _iCustomId; public string _sCustomName; public string sCustomName get return _sCustomName; public CCustom(int iID, string sName) _iCustomId = iID; _sCustomName = sName; List tmpList = new List(); CCustom vCust = new CCustom(1, aa); tmpList.Add(vCust); vCust = new CCustom(2, bb); tmpList.Add(vCust); vCust = new CCustom(3, cc); tmpList.Add(vCust); vCust = new CCustom(4, dd); tmpList.Add(vCust); 索引方法 int iIndex=tmpList.IndexOf(vCust); 删除方法 tmpList.RemoveAt(0);
限制150内