《DotNetBar第三方控件使用笔记8119.pdf》由会员分享,可在线阅读,更多相关《DotNetBar第三方控件使用笔记8119.pdf(27页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、DotNet 第三方控件使用笔记 一、ButtonX 控件 可实现如下效果:(1)在 ButtonX 上,是否显示图像,取决于“images”属性。(2)在“ButtomItem”控件中,是否“只是显示图像”,“只是文本”,还是“图像和文本都显示”,取决于。二、BalloonTip控件(气泡提示)在添加了 BalloonTip 控件后,其他各个控件会出现对应的“上的 BalloonText”和“上的 BalloonCaption”属性,通过修改这两个属性可设置鼠标移动到控件时弹出的气泡提示的标题和内容,也可通过代码设置这个两个属性,如:(txtUserName,提示);(txtUserName
2、,输入你的大名吧);(txtUserPw,提示;(txtUserPw,大名输完了就是你的密码咯);)1.使用效果 1)效果一:在鼠标在控件上面停留时,出现提示信息,如下图:2)效果二:当控件获得焦点时,也出现如上图一样的信息。2.实现上述两种效果的途径 1)将 BalloonTip 控件的“ShowBalloonOnFacus”属性设置为“False”即可实现效果一。3.设置 BalloonTip 显示的内容 2)将“ShowBalloonOnFacus”属性设置为“True”,即可实现效果二。1)在欲设置该属性的控件的“BalloonTipOnFocus 上的 BalloonCaption”
3、和“BalloonTipOnHover 上的 BalloonCaption”属性中,分别设置这两种效果的“标题”属性;2)在“BalloonTipOnFocus 上的 BalloonText”和在“BalloonTipOnHover 上的 BalloonText”属性中,分别设置这两种效果的“显示内容”的属性。4.属性“AlerAnimation”设置“BalloonTip”出现的效果 5.“BalloonTip”除了出现在该控件附近,还可以出现在屏幕的右下角,示例程序如下:private AlertCustom m_AlertOnLoad=null;m_AlertOnLoad=new Ale
4、rtCustom();Rectangle r=(this);=new Point,false 指示该控件是否需要获得焦点才出现“BalloonTip”6.“BalloonTip”除了可以通过“添加控件”的方式使用,也可以通过编程的方式使用,示例程序如下:b=new as Image;=Balloon Status InFormation;=Balloons are now enabled for Balloon Tip Test area.Hover mouse over the area and set the focus to any control.;=;();=true;=4;=thi
5、s;It provides automatic focus management so focused.=true;.Bar bar=new Bar(Bar1);=leftBar1;=;on the line 1 bar=new Bar(Bar3);=leftBar3;=;fileItem=new ButtonItem(file2);=&2.;fileItem=new ButtonItem(file3);=&3.;fileItem=new ButtonItem(file4);=&4.;fileItem=new ButtonItem(file5);=&5.;ET Framework 中,默认是。
6、1.示例(1)private imageList1;(2)(3)=();(4)=(5)ells0.()。1.DataGridView 的示例代码#region 设置DataGridView的显示格式 =false;=false;=true;isible=false;UName,用户名);IP,IP地址);DeptID,DeptID);DeptID.Visible=false;Department,所属部门);foreach(DataGridViewColumn col in =;=,);elected=true;三、控件 Color Picker 的使用 1.使用效果:1)单击相应的按钮,工作
7、区(整体)的颜色发生变化。2)随着鼠标在各种颜色上的移动,工作区(整体)的颜色随着变化。3)还可以选择“More Colors”进一步改变工作区的颜色。2.下面是相应的代码 private bool m_ColorSelected=false;private eOffice2007ColorScheme m_BaseColorScheme=;else 1)改变颜色值(m_BaseColorScheme,;2)应用颜色值(m_BaseColorScheme);3.工作区的控件的颜色有可能不同时变化 原因:是各个控件的“Style”和“ColorSchemeStyle”采用的风格不统一 解决办法:
8、都采用一种风格,如“Office2007”即可 四、控件 SideBar 的使用 1.功能 可实现如下图似的的分组:2.实现方式 1)右键“Add Panel”,进行“分组”。2)对每一个组进行设置。3)右键,对每一个组,添加控件。3.该控件的颜色策略,sSel,false);=scheme;private void sideBar1_ItemClick(object sender,e)item=sender as ItemClick:+(+)n+;五、Enum 枚举类 1.方法-返回指定枚举的基础类型。-public static Type GetUnderlyingType(Type en
9、umType)参数:enumType 类型:枚举类型。返回值:类型:enumType 的基础 Type。-示例 static object GetAsUnderlyingType(Enum enval)Type entype=();Type undertype=(entype);return(enval,undertype);2.方法 -在指定枚举中检索具有指定值的常数的名称。-public static string GetName(Type enumType,Object value)参数:enumType 类型:枚举类型。value 类型:特定枚举常数的值(根据其基础类型)。返回值:类型
10、:一个字符串,该字符串包含enumType 的枚举常数的名称,该常数的值为value;或者,如果没有找到这样的常数,则为 nullNothingnullptrnull 引用(在 Visual Basic 中为 Nothing)。-示例 using System;public class GetNameTest enum Colors Red,Green,Blue,Yellow;enum Styles Plaid,Striped,Tartan,Corduroy;public static void Main()(The 4th value of the Colors Enum is 0,(typ
11、eof(Colors),3);(The 4th value of the Styles Enum is 0,(typeof(Styles),3);3.方法 -检索指定枚举中常数名称的数组。-public static string GetNames(Type enumType)参数:enumType 类型:System.:.Type 枚举类型。返回值:类型:array()enumType 的常数名称的字符串数组。-示例 using System;public class GetNamesTest enum Colors Red,Green,Blue,Yellow;enum Styles Pla
12、id,Striped,Tartan,Corduroy;public static void Main()(The values of the Colors Enum are:);foreach(string s in(typeof(Colors)(s);();(The values of the Styles Enum are:);foreach(string s in(typeof(Styles)(s);4.方法-检索指定枚举中常数值的数组。-public static Array GetValues(Type enumType)参数:enumType 类型:枚举类型。返回值:类型:enum
13、Type 的常数值的 Array。该数组的元素按枚举常数的二进制值排序。-示例 using System;public class GetValuesTest enum Colors Red,Green,Blue,Yellow;enum Styles Plaid=0,Striped=23,Tartan=65,Corduroy=78;public static void Main()(The values of the Colors Enum are:);foreach(int i in(typeof(Colors)(i);();(The values of the Styles Enum ar
14、e:);foreach(int i in(typeof(Styles)(i);5.:.Parse 方法-将一个或多个枚举常数的名称或数字值的字符串表示转换成等效的枚举对象。名称 说明 Parse(Type,String)将一个或多个枚举常数的名称或数字值的字符串表示转换成等效的枚举对象。String 包含要转换的值或名称的字符串。备注:value 参数中包含一个值、一个已命名常数或由逗号(,)分隔的已命名常数列表。在 value 中的每个值、名称或逗号的前面或后面都可以有一个或多个空格。如果 value 是一个列表,则返回值是各指定名称通过按位“或”运算结合而成的值。示例:FlagsAttri
15、bute enum Colors Red=1,Green=2,Blue=4,Yellow=8;(The entries of the Colors Enum are:);foreach(string colorName in(typeof(Colors)(0=1,colorName,(typeof(Colors),colorName);();Colors myOrange=(Colors)(typeof(Colors),Red,Yellow);(The myOrange value 1 has the combined entries of 0,myOrange,(myOrange);Pars
16、e(Type,String,Boolean)将一个或多个枚举常数的名称或数字值的字符串表示转换成等效的枚举对象。一个参数指定该操作是否区分大小写。Boolean 参数指定该操作是否区分大小写 1)示例:(typeof,sSel,false)六、Money Style 1.示例代码 1 .);=true;.);Archive menuItem=new ButtonItem(mArchive,&Archive.);Exit menuItem=new ButtonItem(mExit,E&xit);=true;将新建的Bar添加到dotNetBarManager1 然后,设置摆放位置=;2.示例代码
17、 2 hecked)return item as ButtonItem;else if ButtonItem button=GetCheckedButton,exclude);if(button!=null)return button;return null;private void columnContainer_Click(object sender,EventArgs e)(columnSelector);=true;七、控件 ListViewEx 的使用 1.示例的使用效果 其中:1)标题头部分通过属性“Columns”设置 2)内容部分 前面有图标部分,通过“Items”属性设置 后
18、面的几列,通过“Items”的“SubItems”属性设置 3)可以通过设置该属性,可以使实现各种排列方式。八、控件 SuperToolTip 的使用 1.示例的使用效果 2.用法:只是将控件 Super Tool Bar 添加到工程中,然后,再在要加入上述效果的控件的属性中,找到“superTooltip 上的 SuperTooltip”,单击。随后,会出现如上图所示的对话框,然后,就可以根据该对话框上的提示进行操作。值得注意的是:这里也可以使用 Html 语言,使用超链接(实际的效果类似于 LinkButton 控件),为该控件添加更多的功能。只不过的是:需要在 SuperToolTip
19、控件的事件进行必要的设置。通过程序为控件设置“superTooltip 上的 SuperTooltip”所应该设置的内容,下面以为 TreeView 控件的 node 节点进行相关设置进行说明:1)首先,定义了一个NodeSuperTooltipProvider类,为每一个node对象,提供SuperTooltip功能 nr+,null,null,href=+;九、控件 expandableSplitter 和控件 TabControl 的使用 1.expandableSplitter 控件的使用示例 控件 expandableSplitter 将容器的可显示区域分成两个可以调整大小的区域。建
20、议用法:1)从左到右,按顺序,一次,拖入如下控件,某个容器控件(Dock 设置为 Left),ExpandableSplitter 控件(Dock 设置为 Left)以及另一个容器控件(Dock 设置为 Fill)2)如果想实现“在控件 expandableSplitter 的 SplitterBar 上单击一下,也能将该控件控制的区域收起或放开“的功能,可在属性中设置。注意的是:在选项中,选择那个控件,那在单击“SplitterBar“时,就收起或打开哪个控件。3)从网上下载的相关资料 DotNetBar 中 ExpandableSplitter 使用技巧 为了实现如下图 1 到图 2 效果
21、,用 ExpandableSplitter 很方便,设置 ExpandableSplitter的 ExpandedControl 属性为 panelEx_Right 即可。但是想实现图 3 的效果,本以为用这个控件加上 Form 的 Autosize 属性即可。没想搞了半天发现不管是 Form 用 Autosize 让 panel_right 的 Dock 为 Fill,还是 panel_right 锚定都无法实现这个效果。图 1 图 2 仔细想想,Autosize 肯定不行,其和 Dock 在实现上就是是矛盾的,呵呵。真是懒习惯了,动手加下边几句就可以解决,在这里记录一下。public pa
22、rtial class Test:Form ext);private void SetTabStyle(eTabStripStyle style)=style;foreach(TabItem tab in =;private void tabControl1_MouseDown(object sender,e)if!=return;1)0,25,p0);ET框架开发人员指南”或文档中的主题图片格式数字串(英文)。在下例中您将注意到,好心的博士既使用了“#”字符,又使用了“0”字符。如果相应的数字是前导零或尾随零,“#”字符就会替换为空值。无论相应数字的值如何,“0”字符都会被替换为零字符因此,
23、数字将会被零填补。句号(如果有的话)表示小数分隔符的位置。十、SideBar 控件实现图标的相互拖动 下面的代码可以将下图,左侧的图标和右侧的图标相互拖动入对方 private void listView1_DragEnter(object sender,e)if(m_InternalDragDrop)return;if =;else =;private void listView1_DragDrop(object sender,e)if(m_InternalDragDrop)return;ButtonItem item=as ButtonItem;if(item=null)return;,;
24、void listView1_MouseMove(object sender,e)if=&=4|=4)if ButtonItem item=new ButtonItem(dragitem,0.Text);=0.ImageIndex;=;=;m_InternalDragDrop=true;if(item,=m_InternalDragDrop=false;十一、控件 SideBar 的使用(1)使用效果,见上图(2)使用起来不难(3)改变图标大小,及删除图标的程序 private void bLargeIcons_Click(object sender,e)if!=null)void bSmal
25、lIcons_Click(object sender,e)if!=null)void bRemoveItem_Click(object sender,e)if(m_HotItem!=null)if(Are you sure you want to remove +,Remove Item,=(4)与图标排列列数相关的程序 foreach(SideBarPanelItem panel in =:;();十二、控件 ExpandablePanel 的使用 (1)使用效果 ,实际上提供了一个可收缩的控件容器,单击标有数字“1”、“2”的地方,Panel 收起或打开。(2)1)属性,与该Expanbl
26、ePanel控件“收起/打开”的方式有关。2)属性,与该控件在运行开始后的初始状态“是开,还是闭”有关。3)属性,设置为“True”时,单击“效果图”中“Title”也会把该控件打开或收起。4)属性和控件的整体颜色风格有关。5)这两个属性,和控件的“打开、收缩”按钮的样子有关,示例为默认风格,和为自定义风格。十三、控件 ExplorerBar 和控件 PropertyGrid 的使用 控件“ExplorerBar”和控件“PropertyGrid”一起使用,可实现如下图所示的功能:(1)也是用来分组,且分的组可收缩。(2)提供属性页。(3)下面这段程序,将和关联起来:private void
27、explorerBar1_ItemClick(object sender,EventArgs e)if(sender is =sender;else =null;十四、界面示例 下面的程序实现如下图所示的界面:ExplorerBarGroupItem group=new ExplorerBarGroupItem(group1,Search);();label=new LabelItem(searchLabel,Search by any or all of the criteria below.);=true;=true;=new Font,;LabelItem(searchLabel1,Al
28、l or part of the file name:);=true;=true;将TextBox放在ExplorerBar上 TextBoxItem textItem=new TextBoxItem(txtFileName);=true;将Label放在ExplorerBar上 label=new LabelItem(searchLabel2,Look in:);=true;=true;将ComboBox放在ExplorerBar上 ComboBoxItem combo=new ComboBoxItem(cboLookIn);=true;cboItem=new My Computer;Exp
29、lorerBarGroupItem(group2,When was it modified);();ET控件放在ExplorerBar上,本例为RadioButton et 出现之前提供的 ActiveX 控件,用来为应用程序增加浏览功能,具备这个功能的基础是该控件对应的 Dll 文件是 Internet Explorer 的一部分,所以它能够在安装了 Internet Explorer 的系统上提供支持。象其他 ActiveX Control 一样,Visual IDE 工具箱在默认情况下并不直接包含 WebBrowser 控件。不过,在应用程序中添加该控件很简单。在 Visual 开发环境
30、下,在“工具箱”的“Windows 窗体”上点击鼠标右键,从弹出的上下文菜单中选择“自定义工具箱”,在随后出现的“自定义工具箱”对话框的“com 组件”标签里选中“Microsoft Web 浏览器”,确定后,“Iexplorer”控件就会显示在工具箱中,它其实就是一个 WebBrowser 控件。这之后,象使用 Windows 标准控件一样,把 Iexplorer 控件拖入应用程序的窗体就可以了。Visual IDE 将自动生成所需要的部分 COM 代码,同时,C#windows 应用程序也将自动添加 AxSHDocVw 及 SHDocVx 引用(你可以在应用程序解决方案管理器“引用”项下看
31、到它们),分别对应于磁盘上的和文件(你可以在应用程序BinDebug 目录下找到它们)。同时,代码也将自动创建实例对象,并设置默认名称为 axWebBrowser1(语句:private axWebBrowser1)。(为引用简化名称,可导入名字空间 using AxWebBrowwer)经过这些处理后,应用程序就已经成为 WebBrowser 控件的客户端了。WebBrowser 控件能够浏览到任何指定位置的资源,包括本地文件系统、局域网上的文件系统及互联网所定位的资源。实际上,WebBrowser 控件定位到一个.Html 页,该页(隐式)调用方法以打开一个新窗口。1)WebBrowser
32、 控件的事件 WebBrowser 控件包含丰富的事件,用来捕捉与控件相关的变化并作出反应。其中,BeforeNavigate 2 事件在对指定对象(窗体或框架元素)导航前激活,这个特性常被用来作一些验证工作,比如对客户录入的 Url 地址作有效性检查,以转换不标准的 Url 地址,有意义的是,这样的验证转换工作是自动完成的。例如,如果你输入的 Url 为“,在该事件中引用Url 属性就可以自动将它转换为标准格式的 Url“,并自动将转换结果存入事件的 URL 参数中。事件代码为:private void axWebBrowser1_BeforeNavigate2(object sender,
33、e)=et 架构,所以并不能保证它与所有支持.Net 的开发语言完全无缝集成。比如,VisualC#语言是不支持可选参数的,因此,在 Visual C#开发的 Windows Application 中调用 WebBrowser 控件的 Navigate()方法时,所有的参数均需要明确地给出来,并且,这些可选参数均是引用类型(ref)。继续扩展上面的例子,添加“buttonGo”按钮,输入 Click 事件代码为:private void buttonGo_Click(object sender,e)string url=;3)在欲加入“命令函数”的控件的属性页中,找到“Command”项,在
34、右侧的下拉列表框中,选择要关联的的实例,然后,再进行相应的属性设置即可。(3)当然,也可以通过控件的“Command”属性,编程实现。(4)该控件实现的功能,和控件的“单击事件”有什么关系、区别 十五、SaveFileDialog 的使用();if()!=return;if =)return;=;();十六、关于多文档窗口 当子窗体的激活状态发生变化时,会激活父窗体Form的事件,我们可以在该函数中对有关子窗体激活状态发生变化时的相关设置。下面是示例程序:private void Form1_MdiChildActivate(object sender,EventArgs e)Form myForm=;isible=false;else .=WizardWelcomePage;/该句将使向导产生页面间的跳转