目录怎么自动生成-20m宽带速度

devexpress
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