目录怎么自动生成-20m宽带速度
![devexpress](/uploads/image/0851.jpg)
2023年4月6日发(作者:迅雷5 8下载)
DevExpress控件使⽤⽅法:第⼀篇gridControl详解
GridControl
(1)层次设计器
有五种视图模式,bandedgridview多⾏表头,数据还是⼀⾏⼀组,最靠近数据的表头与数据⼀⼀对应;advancedbandedgridview多⾏表头,数据可以多⾏⼀组;cardview⼀个卡⽚是
⼀组数据,其中左侧是标题,右侧是数据;layoutview是cardview的集合,布局可以⾃定义
(2)视图
视图的层次结构
视图属性:
可通过访问所有视图。
可通过s访问当前视图的所有列
(3)设计器(层次设计器中点击RunDesigner可调出)
设计器有四⼤功能:①主要功能的设计;②选择外观;③可以选择多个视图,内嵌编辑器的设置;④打印功能的设置
①View:
(a)Option:
OptionsBehavior可以设置⾏为(是否允许新增⾏/是否允许删除⾏/是否允许编辑/是否允许展开所有分组)
OptionsCustomization(是否允许排序/分组/过滤/列的移动/列的⼤⼩的调整)
OptionsDetail(设置从表的属性)、OptionsFilter(过滤属性的设置)OptionsView(显⽰或隐藏某些东西,⽐如标题⾏)
(b)AppearancePrint:(⾏⾼…)
Columns://列的相应的属性
FeatureBrowser://设置事件,Grid的绑定、列的绑定(有⽅法提⽰),什么都可以设置
Layout:设置布局
GroupSummaryItems添加分组统计
②Appearance:
Appearances可设置⾏的外观
FormatConditions条件样式
StyleSchemes可设置主题(⽐较⽅便)
③Repository
ViewRepository设计视图,与①差不多
In-placeEditorRepository内嵌编辑器
④Printing
(4)gridControl:给该列添加组件(如按钮)三种⽅法
法⼀:打开设计器(RunDesigner),选择左侧Repository,点击In-placeEditorRepository(内嵌编辑器),点击Add右侧的下拉菜单,选择你想添加的控件,⽐如ComboBoxEdit,再在右
侧编辑控件的属性,ComboBox的话就可以设置Data下的Items集合,然后点左侧Main⾥的Columns,点你想在上头添加控件的列,找右侧Data下的ColumnEdit,点最右边的下拉菜单,
点Existing左侧的加号,就能找到你刚才的控件,添加。会默认给该列的每⼀个格都加上这个控件。
法⼆:点击你想添加控件的列标题,再点属性栏中的ColumnEdit,下拉菜单点new,选择想添加的控件,然后ColumnEdit左侧会出现加号,展开加号,下⽅会出现许多⼦属性,这些都
是设置内嵌的控件的属性的。
法三:直接写代码。
②拖动⼀个gridControl控件,改变视图为BandedGridview,属性栏中点OptionView,选择NewItemRowPosition,选Bottom
②添加引⽤:Grid;
form的构造函数中添加代码:
BandedGridColumnnewColumn=()asBandedGridColumn;
n="Country";
[0].(newColumn);
e=true;
②(假设添加的控件是计算器)添加引⽤:tory;
form的构造函数中继续添加代码,效果图
RepositoryItemCalcEditcalcEdit=newRepositoryItemCalcEdit();
(calcEdit);
Edit=calcEdit;
(5)给gridview添加筛选器
点击gridview1,再点属性栏中的OptionsView,下头有个ShowFilterPanelMode,默认的是不显⽰,改成总是显⽰,这样gridview下⽅就会出现⼀个筛选器,可以根据条件对数据
进⾏筛选,再显⽰。
(6)gridview导出为PDF
可以在窗体中添加个按钮,把gridview导出为PDF并在AdobeReader中显⽰,前提是电脑上安装的AdobeReader.
按钮中添加如下代码:
ewView=ew;
if(View!=null)
ToPdf("");//pdf的⽂件名必须是英⽂
ProcesspdfExport=newProcess();
me="";
nts="";
();
添加引⽤stics;
实际效果图:(列标题⽆法显⽰,可能是汉字字体的问题,图中默认为宋体)
(7)⿏标滑过gridview时,⿏标所指⾏显⽰橙⾊
①添加两个引⽤:;
fo;
②声明⼀个私有成员变量:privateinthotTrackRow=dRowHandle;
③写⼀个⽅法:privateintHotTrackRow{
get{
returnhotTrackRow;
}
set{
if(hotTrackRow!=value)
{
intprevHotTrackRow=hotTrackRow;
hotTrackRow=value;
hRow(prevHotTrackRow);
hRow(hotTrackRow);
if(hotTrackRow>=0)
=;
else
=t;
}
}
}
④在gridview的属性栏中找到事件,添加⼀个MouseMove事件:
privatevoidgridView1_MouseMove(objectsender,MouseEventArgse)
{
GridViewview=senderasGridView;
GridHitInfoinfo=tInfo(newPoint(e.X,e.Y));
if(ell)
HotTrackRow=dle;
else
HotTrackRow=dRowHandle;
}
⑤在gridview的属性栏中找到事件,给gridview添加⼀个RowCellStyle事件:
privatevoidgridView1_RowCellStyle(objectsender,RowCellStyleEventArgse)
{
if(dle==HotTrackRow)
lor=ldenrod;
}
效果图:(⿏标滑过时,⿏标所指⾏显⽰橙⾊)
(8)gridview中的当前所选框四周加粗,效果图:
①添加两个引⽤:tion;
;
②再写⼀个类:
publicclassMyXPaint:XPaint
{
publicoverridevoidDrawFocusRectangle(Graphicsg,Rectangler,ColorforeColor,ColorbackColor)
{
if(!CanDraw(r))return;
Brushhb=;
ctangle(hb,newRectangle(r.X,r.Y,2,-2));//left
ctangle(hb,newRectangle(r.X,r.Y,-2,2));//top
ctangle(hb,newRectangle(-2,r.Y,2,-2));//right
ctangle(hb,newRectangle(r.X,-2,,2));//bottom
}
}
③在当前form的load事件中添加两⾏代码:
FieldInfofi=typeof(XPaint).GetField("graphics",|lic);
ue(null,newMyXPaint());
(9)gridControl内嵌导航栏(可以翻页、添加或删除⾏)
点击gridControl1,点属性栏中最下⽅的UseEmbeddedNavigator,选true,gridview下⽅就会出现内嵌导航栏
删除⾏时可以添加提⽰按钮,⽅法:
添加引⽤itors;
点击gridControl1,点属性栏中的事件,双击EmbeddedNavigator中的ButtonClick事件,添加代码:
if(Type==)
{
if(("你想删除当前⾏么?","确认删除",ancel,on)!=)
d=true;
}
翻页:如果只要翻页按钮,可以把其余按钮设为不可见
gridControl1属性EmbededNavigator-Buttons—PrevPage和NextPage的visible设为true,其余的visible全设为false
(10)右键菜单(只能对当前单元格进⾏复制、粘贴、全选、剪切、操作)
选择gridView1,在属性栏的事件中双击ShownEditor事件,添加代码,效果图:↑
tMenucm;
privatevoidgridView1_ShownEditor(objectsender,EventArgse)
{
if(cm==null)
{
InitializeCustomontextMenu();
}
tMenu=cm;
}
privatevoidInitializeCustomontextMenu()
{
cm=tMenu();
(newMenuItem("剪切",newEventHandler(OnCut)));
(newMenuItem("复制",newEventHandler(OnCopy)));
(newMenuItem("粘贴",newEventHandler(OnPaste)));
("-");
(newMenuItem("全选",newEventHandler(OnSelectAll)));
}
privatevoidOnCut(objectsender,EventArgse)
{
TextEdittextEdit=EditorasTextEdit;
if(textEdit!=null)
{
();
}
}
privatevoidOnCopy(objectsender,EventArgse)
{
TextEdittextEdit=EditorasTextEdit;
if(textEdit!=null){
();
}
}
privatevoidOnPaste(objectsender,EventArgse)
{
TextEdittextEdit=EditorasTextEdit;
if(textEdit!=null)
{
();
}
}
privatevoidOnSelectAll(objectsender,EventArgse)
{
TextEdittextEdit=EditorasTextEdit;
if(textEdit!=null)
{
All();
}
}
(12)对某列进⾏求和或取最⼤值最⼩值,显⽰在gridview底部。
gridview1绑定数据后,点击RunDesigner,点Column,右侧点Data下的
SymmaryItem,SummaryType的选项根据需求来选。然后关闭当前窗⼝,gridView1的属性设置页脚可见(属性栏中点OptionView,ShowFooter改为True)。该列的页脚的单元格颜⾊
可以设置。选择gridView1事件中的CustomDrawFooterCell,添加如下代码,再添加引⽤g2D;
(13)gridView不可编辑
OptionBehavior的Editable改为false
(14)单元格添加颜⾊,效果图:
在gridView1的RowCellStyle事件中添加如下代码:
if(dle!=dRowHandle&&((dle%2==0&&eIndex%2==1)||(eIndex%2==0&&dle%2
==1)))
lor=lue;
(15)gridView按某列标题进⾏分组(各个组可以展开收起,分组条件为⽤户的拖拽列,把列标题拖拽到最上⽅即可),效果图:
添加引⽤:;
在gridView1的FocusedRowChanged事件中添加代码:
if(pRow(dRowHandle))
{
boolexpanded=Expanded(dRowHandle);
Expanded(dRowHandle,!expanded);
}
(15)根据单元格的值改变其背景⾊(右图是将Date列中,值⼩于2015的单元格染⾊)
双击进⼊gridView1的CustomDrawCell事件:
privatevoidgridView1_CustomDrawCell(objectsender,RowCellCustomDrawEventArgse)
{
if(ame=="Date")
{
intx=32(CellValue(dle,"Date"));
if(x<2015)
lor=ose;
}
}
(16)列对齐⽅式s["Date"].ment=;
//Near左对齐Center居中对齐Far右对齐Default数据默认的对齐⽅式
(17)gridControl绑定数据源DataTable
更多推荐
devexpress
发布评论