一、 ComboBoxEdit
1、 如何使其不可编辑
TextEditStyle 设置为:DisableTextEditor
2、 如何设置鼠标为手形
Cursor 设置为:Hand
二、 GridControl
1、 如何解决单击记录整行选中的问题
View->OptionsBehavior->EditorShowMode 设置为:Click
2、 如何新增一条记录
(1)、gridView.AddNewRow()
(2)、实现gridView_InitNewRow事件
3、如何解决GridControl记录能获取而没有显示出来的问题
gridView.populateColumns();
4、如何让行只能选择而不能编辑(或编辑某一单元格)
(1)、View->OptionsBehavior->EditorShowMode 设置为:Click
(2)、View->OptionsBehavior->Editable 设置为:false
5、如何禁用GridControl中单击列弹出右键菜单
设置Run Design->OptionsMenu->EnableColumnMenu 设置为:false
6、如何隐藏GridControl的GroupPanel表头
设置Run Design->OptionsView->ShowGroupPanel 设置为:false
7、如何禁用GridControl中列头的过滤器
设置 Run Design->OptionsCustomization->AllowFilter 设置为:false
8、如何在查询得到0条记录时显示自定义的字符提示/显示
方法如下:
//When no Records Are Being Displayed
private void gridView1_CustomDrawEmptyForeground(object sender, CustomDrawEventArgs e)
{
//方法一(此方法为GridView设置了数据源绑定时,可用)
ColumnView columnView = sender as ColumnView;
BindingSource bindingSource = this.gridView1.DataSource as BindingSource;
if(bindingSource.Count == 0)
{
string str = "没有查询到你所想要的数据!";
Font f = new Font("宋体", 10, FontStyle.Bold);
Rectangle r = new Rectangle(e.Bounds.Top + 5, e.Bounds.Left + 5, e.Bounds.Right - 5, e.Bounds.Height - 5);
e.Graphics.DrawString(str, f, Brushes.Black, r);
}
//方法二(此方法为GridView没有设置数据源绑定时,使用,一般使用此种方法)
if (this._flag)
{
if (this.gridView1.RowCount == 0)
{
string str = "没有查询到你所想要的数据!";
Font f = new Font("宋体", 10, FontStyle.Bold);
Rectangle r = new Rectangle(e.Bounds.Left + 5, e.Bounds.Top + 5, e.Bounds.Width - 5, e.Bounds.Height - 5);
e.Graphics.DrawString(str, f, Brushes.Black, r);
}
}
}
9、如何显示水平滚动条?
设置this.gridView.OptionsView.ColumnAutoWidth = false;
10、如何定位到第一条数据/记录?
设置 this.gridView.MoveFirst()
11、如何定位到下一条数据/记录?
设置 this.gridView.MoveNext()
12、如何定位到最后一条数据/记录?
设置 this.gridView.MoveLast()
13、设置成一次选择一行,并且不能被编辑
this.gridView1.FocusRectStyle = DevExpress.XtraGrid.Views.Grid.DrawFocusRectStyle.RowFocus;
this.gridView1.OptionsBehavior.Editable = false; this.gridView1.OptionsSelection.EnableAppearanceFocusedCell = false;
14、如何显示行号?
this.gridView1.IndicatorWidth = 40;
//显示行的序号
private void gridView1_CustomDrawRowIndicator(object sender, RowIndicatorCustomDrawEventArgs e)
{
if (e.Info.IsRowIndicator && e.RowHandle>=0)
{
e.Info.DisplayText = (e.RowHandle + 1).ToString();
}
}
15、如何让各列头禁止移动?
设置gridView1.OptionsCustomization.AllowColumnMoving = false;
16、如何让各列头禁止排序?
设置gridView1.OptionsCustomization.AllowSort = false;
17、如何禁止各列头改变列宽?
设置gridView1.OptionsCustomization.AllowColumnResizing = false;
三、navBarControl
1、如何在每一个navBarGroup里添加自己想要的控件
设置GroupStyle: ControlContainer
2、如何设置navBarGroup有滚动条
设置SkinExplorerBarViewScrollStyle:ScrollBar
3、 如休把navBarGroup设置成如下样式
设置navBarGroup的PaintStyleName属性为: SkinNavigationPane
四、toolTipController
1、如何设置显示的时间长短
设置this.toolTipController1.AutoPopDelay = 2000;
2、如何在屏幕上显示如上图所示的效果
ToolTipControllerShowEventArgs args = this.toolTipController1.CreateShowArgs();
this.toolTipController1.SetToolTip(this.sbtnYes, "请选择一条记录!");
this.toolTipController1.SetTitle(this.sbtnYes, "提示");
this.toolTipController1.SetToolTipIconType(this.sbtnYes, DevExpress.Utils.ToolTipIconType.Exclamation);
this.toolTipController1.ShowBeak = true;
this.toolTipController1.ShowShadow = true;
this.toolTipController1.Rounded = true;
this.toolTipController1.ShowHint("请选择一条记录!", "提示");
args.ToolTip = "请选择一条记录!";
args.Title = “提示”;
3、如何设置边框的颜色
this.toolTipController1.Appearance.BorderColor = Color.Red;
五、TextEdit
1、如何设置TextEdit为多行,可拉伸
设置TextEdit的Propertity->AutoHeight为:False
六、LayoutControl
1、如何设置LayoutItem为隐藏
设置LayoutItem.Visibility = Never
七、TreeList
1、如何隐藏TreeList的列头
设置TreeListr的OptionsView的ShowColumns属性为:False
八、PictureEdit
1、如何禁止PictureEdit的右键菜单?
设置PictureEdit的Properties->ShowMenu为:false
九、TreeList
1、 如何让TreeList的每个结点高亮显示?
代码如下:
private void treeList1_CustomDrawNodeCell(object sender, DevExpress.XtraTreeList.CustomDrawNodeCellEventArgs e)
{
TreeList node = sender as TreeList;
if (e.Node == node.FocusedNode)
{
e.Graphics.FillRectangle(SystemBrushes.Window, e.Bounds);
Rectangle r = new Rectangle(e.EditViewInfo.ContentRect.Left,
e.EditViewInfo.ContentRect.Top,
Convert.ToInt32(e.Graphics.MeasureString(e.CellText, treeList1.Font).Width + 1),
Convert.ToInt32(e.Graphics.MeasureString(e.CellText,treeList1.Font).Height));
e.Graphics.FillRectangle(SystemBrushes.Highlight, r);
e.Graphics.DrawString(e.CellText, treeList1.Font, SystemBrushes.HighlightText, r);
e.Handled = true;
}
}
//============================================================================
//===============================以下内容为收集===============================
//============================================================================
一、改变grid的样式。
DevExpress.XtraGrid.Design.XAppearances xapp;
xapp=new DevExpress.XtraGrid.Design.XAppearances(System.Environment.GetFolderPath(System.Environment.SpecialFolder.System) + “\DevExpress.XtraGrid.Appearances.xml “);
xapp.LoadScheme(“样式名字”, gridControl1.MainView);
二、选择单元设置和取所选的值
gridView1.OptionsSelection.MultiSelect = ceMultiSelect.Checked; //多行选择
gridView1.OptionsSelection.MultiSelectMode= GridMultiSelectMode.CellSelect;
gridView1.OptionsSelection.MultiSelectMode= GridMultiSelectMode. RowSelect; //
三、gridview的控制
///<取当前选中的值>
string GetSelectedRows(GridView view) {
string ret = "";
int rowIndex = -1;
if(view.OptionsSelection.MultiSelectMode == GridMultiSelectMode.RowSelect) {
foreach(int i in gridView1.GetSelectedRows()) {
DataRow row = gridView1.GetDataRow(i);
if(ret != "") ret += "\r\n";
ret += string.Format("Company Name: {0} (#{1})", row["CompanyName"], i);
}
}
else {
foreach(GridCell cell in view.GetSelectedCells()) {
if(rowIndex != cell.RowHandle) {
if(ret != "") ret += "\r\n";
ret += string.Format("Row: #{0}", cell.RowHandle);
}
ret += "\r\n " + view.GetRowCellDisplayText(cell.RowHandle, cell.Column);
rowIndex = cell.RowHandle;
}
}
return ret;
}
///<设置选中的颜色>//半透明的效果
private void icbTranslucentColors_CheckedChanged(object sender, System.EventArgs e) {
if(icbTranslucentColors.Checked) {
gridView1.Appearance.SelectedRow.BackColor = Color.FromArgb(30, 0, 0, 240);
gridView1.Appearance.FocusedRow.BackColor = Color.FromArgb(60, 0, 0, 240);
}
else {
gridView1.Appearance.SelectedRow.Reset();
gridView1.Appearance.FocusedRow.Reset();
}
}
///<自动添加一行>
gridView1.OptionsView.NewItemRowPosition = NewItemRowPosition.Bottom//Top/None;
///<设置gridView的按钮>
gridView1.ShowButtonMode = ShowButtonModeEnum.。。。。。。
gridView1.OptionsBehavior.Editable = chEdit.Checked; //设置按钮是否可用
///向选中的空间输入字符串
SendKeys.Send(“fsfds”);
///控件焦点
gridControl1.Focus();
四、cardView的设置
///是否现实快捷按钮CustomizeButton
cardView1.OptionsView.ShowQuickCustomizeButton=true/false;
///设置CustomizeButton的能否排序和过滤
foreach(GridColumn col in cardView1.Columns)
{ col.OptionsColumn.AllowSort}
foreach(GridColumn col in cardView1.Columns)
{ col.OptionsFilter.AllowFilter}
///card的头上的ico显示
cardView1.LayoutChanged();
///card的头上的标题改变显示
cardView1.CardCaptionFormat =””;
///cardview显示的单个记录的折叠按钮
cardView1.OptionsView.ShowCardExpandButton=true;
///
cardView1.MaximumCardColumns =iSize
cardView1.MaximumCardRows = val;
cardView1.OptionsBehavior.AutoHorzWidth
///多选
cardView1.OptionsSelection.MultiSelect = ceMultiSelect.Checked;
foreach(int i in cardView1.GetSelectedRows()) {
DataRow row = cardView1.GetDataRow(i);
if(ret != "") ret += "\r\n";
ret += string.Format("{0} / {1} : {2:$#,0.00}", row["Trademark"], row["Model"], row["Price"]);
}///查看选择中的记录
CellMerging(单元格合并的效果)
///
CellMerging(单元格合并的效果)
gridView1.OptionsView.AllowCellMerge = ceMerging.Checked;
Fixed Bands(bandedGridView)
///两边固定
gridBand3 的一列的Fixed属性改成 Right,Left,None
///固定与非固定列之间的距离用
bandedGridView2.FixedLineWidth = (int)numFixedLineWidth.Value;
///设置列的颜色
l 打开Run Designer 选中Columns 选中要改变的列 里面有AppearanceCell (设置列的外观)和 AppearanceHeader(设置表格头的外观)
l 或者选中该列查看“属性”里面也有这两个属性。
///统计 (gridView bandedGridView通用)
分组统计和全部统计:
全部统计:在最下面显示统计的结果。
Run Designer->Total Summary //->General 设置显示
//->Columns 对特定列来设置统计
汇总结果是否显示:可以通过gridControl的view的ShowFooter属性来设置表格下面的汇总结果
分组统计:
以上就是“分组”的 显示在每个分组下面来显示汇总结果。
通过bandedGridView2.GroupFooterShowMode= GroupFooterShowMode.。。。。设置分组的显示模式。
///GridView设置菜单