Dev控件GridControl 的使用

(1)Dev控件GridControl 的使用

1、确认当前正在编辑的单元格的输入
this.gridview1.CloseEditor();

2、保存当前行的值到数据源
this.gridview1.UpdateCurrentRow();

3、通过数据适配器把修改更新到数据库
sqlDataAdapter1.Update(myDataSet, "MyTable")
//此时直接通过DataAdapter执行Update就可以

按照1,2,3的步骤执行;也可以通过1,2步骤然后通过Sql实现

(2)DataGrid的初始化
       gridView1.OptionsView.EnableAppearanceEvenRow = true;
      gridView1.OptionsView.EnableAppearanceOddRow = true;
      gridView1.OptionsView.ShowFilterPanel = false;
     gridView1.OptionsView.ShowGroupPanel = false;


   gridView1.OptionsView.ShowGroupPanel=false;
   gridView1.OptionsSelection.EnableAppearanceFocusedCell = false;
   gridView1.OptionsBehavior.Editable = false;
   gridView1.OptionsCustomization.AllowColumnMoving = false;
   gridView1.OptionsCustomization.AllowColumnResizing = false;
   gridView1.OptionsCustomization.AllowGroup = false;
   gridView1.OptionsCustomization.AllowFilter = false;
   gridView1.OptionsCustomization.AllowSort = true;

(3)获取选中的行 和选中行的字段的内容

int[] a = this.gridView1.GetSelectedRows(); //传递实体类过去 获取选中的行
LAA.AssetGuid = this.gridView1.GetRowCellValue(a[0], "AssetGuid").ToString();//获取选中行的内容



(4)以前在windows 自带的控件里面Button控件的相互调用是
button1_Click(null,EventArgs.Empty); 
Dev控件下面是
simpleButton1_Click(new object(),new EventArgs());

(5)在XtraGrid中如何验证单元格的值 
我们在XtraGrid直接输入数据的情况下,如何验证每一个单元格输入的值是否正确呢?
有两种方法来实现基于单元格的验证:
1、使用RepositoryItem.Validating事件
事件的"sender" 必须转换为BaseEdit类型,使用EditValue来获取当前输入的值并进行校验,如果校验不通过,把e.Cancel设置True。这种方法一般用来对内置控件的单元格进行数据验证
2、使用 GridView.ValidatingEditor 事件
事件的"sender"必须转换为GridView类型,当前列可以从GridView.FocusedColumn属性获得,值可以从e.Value获取,如果校验不通过,需要把e.Valid设置为False.。
这种方法一般用于对整个Grid内的文本框进行数据验证
在设置完事件之后需要写一个GridView.InvalidValueException 的事件委托:
例如:

private void gridView1_InvalidValueException(object sender, DevExpress.XtraGrid.Views.Base.InvalidValueExceptionEventArgs e) {
  e.ThrowException 
= false;
  e.WindowText 
= "The new value is invalid. Please correct it or press Esc to abandon your changes.";
  e.DisplayError 
= true;
}

(6)barManager的具体设置
在增加了barManager控件以后,在[Click Here to add MainMenu] [Click Here to Tool Bar]里面选择[Click Here to Tool Bar] 填写需要新增的工具栏按钮。
进入Designer 里面,选择ToolBars  ->Custom 1->OptionsBar 里面进行如下设置:
AllowQuickCustomization=false
DrawDragBorder=false
RotateWhenVertical=false
UseWholeRow=True
以上4项进行初始化设置

(7) 在DataGrid 里面增加状态栏
首先在BarManager里面增加StaticText  把新增的barStaticItem 的AutoSize 设置为Spring
然后,编写以下代码:

private void StateCote()
        {
           
            if (gridView1.RowCount!=0)
            {
                int a=this.gridView1.RowCount;
                barStaticItem1.Caption="当前共有记录:"+a.ToString();
                int[] b=this.gridView1.GetSelectedRows();
                b[0]+=1;
                barStaticItem2.Caption="当前选中:"+b[0].ToString();
            }
            else
            {
                barStaticItem1.Caption="当前共有记录:";
                barStaticItem2.Caption="当前选中:";
            }        
        }

        private void gridControl1_Click(object sender, System.EventArgs e)
        {
            StateCote();
        }

        private void gridView1_FocusedRowChanged(object sender, DevExpress.XtraGrid.Views.Base.FocusedRowChangedEventArgs e)
        {
            StateCote();
        }


(8) DateTable 填充DataGrid
这里需要引用:

using DevExpress.Utils;

 

/// <summary>
        /// 根据DataTable 填充DataGrid
        
/// </summary>
        /// <param name="dt"></param>
        private void DisposeDataGrid(DataTable dt)
        {
            //标题居中
            gridView1.Appearance.HeaderPanel.TextOptions.HAlignment =HorzAlignment.Center;
            
            this.gridControl1.DataSource = dt;
            gridView1.Columns[0].Visible = false;//异常日志GUID
            gridView1.Columns[1].Visible = false;//通行编号
            gridView1.Columns[2].Visible = false;//通道编号
            
            gridView1.Columns[3].Caption = "通道名称";
            gridView1.Columns[3].Width = 100;

            gridView1.Columns[4].Caption = "卡号";
            gridView1.Columns[4].Width = 100;

            gridView1.Columns[5].Caption = "持卡人姓名";
            gridView1.Columns[5].Width = 60;


            gridView1.Columns[6].Caption = "主卡卡号";
            gridView1.Columns[6].Width = 100;
            
            gridView1.Columns[7].Caption = "主卡持卡人";
            gridView1.Columns[7].Width = 60; 
            
            gridView1.Columns[8].Caption = "通行时间";
            gridView1.Columns[8].Width = 100;


            gridView1.Columns[9].Caption = "车牌号码";
            gridView1.Columns[9].Width = 60;
            
            
            
            gridView1.Columns[10].Visible = false;//图象GUID


            gridView1.Columns[11].Caption = "异常描述";
            gridView1.Columns[11].Width = 100;

            gridView1.Columns[12].Caption = "处理结果";
            gridView1.Columns[12].Width = 100;

            gridView1.Columns[13].Visible = false;//ImageID


            
//可以排序
            gridView1.OptionsCustomization.AllowSort=true;
        }

其中有一列显示时间类型


            gridView1.Columns[3].Caption = "操作时间";
            gridView1.Columns[3].Width = 200;
            gridView1.Columns[3].UnboundType = DevExpress.Data.UnboundColumnType.DateTime;
            gridView1.Columns[3].DisplayFormat.FormatString = "F";
            gridView1.Columns[3].DisplayFormat.FormatType = FormatType.DateTime;

 


(9) 双击DataGrid弹出详细信息

 

 

private void gridControl1_DoubleClick(object sender, System.EventArgs e)
        {
            //双击弹出异常日志描述
            if (this.gridView1.RowCount > 0)
            {
                int[] a=this.gridView1.GetSelectedRows();
                string str_GUID=this.gridView1.GetRowCellValue(a[0],"Ex_No").ToString();//获得异常编号
                MessageBox.Show(str_GUID);
                frmExceptionLogDesc dlg=new frmExceptionLogDesc(); 
                dlg.Text = "异常日志查看";
                dlg.ShowDialog();
            }
        }

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
写文章,查论文或看文献的时候,面对许多图表,要引用别人的数据,或者想把自己的数据处理结果和别人的数据对比一下,可是怎么才能从别人的论文或文献中把数据提取出来了呢? 如果你有这方面的需求,那么你来对了地方.试试DataDig吧! 第4.5.0版发布预告 正式发布日期:2013-01-01 全面支持win xp、win 7和win 8系统. 增加自动识别数据点的功能,自动识别曲线的代码以后再加上... 下面地址是这个版本的测试版,正式发布要等到2013-01-01...... http://pan.baidu.com/share/link?shareid=160433&uk=704678057/ 也可以在CSDN和新浪分享中搜索一下! 第4.0.0版发布 发布日期:2012-12-01 主要是增加和改善对win 8系统的支持. 全面支持win xp、win 7和win 8系统. 根据网友的反馈,改善部分功能。。。。。。 积分不够下载的用户,可发邮件至[email protected],我会不定期的回复邮件,并以附件的形式发给需要的用户。 下一版本将增添点和曲线的自动识别功能,敬请关注! 第3.6.0版发布 全面支持win xp和win 7系统. 根据网友改善用户体验; 使用方法: 1.打开bmp文件或jpg文件 2.选择坐标系统(线形坐标或对数坐标,共9种) 3.标定任意两个点(常用左上角和右下角) 4.按住ctrl点击数据点或拖动鼠标 5.保存数据. 6.其它操作:去掉重复的数据,删除鼠标处的坏数据,去掉最后一个数据等等. 主要功能: 1.可选择精确使用鼠标点击或拖动数据获取图表上的数据; 2.增强的放大镜功能可使数据获取更精确; 3.可剔去冗余、重复和误操作获得的数据; 4.实时动态显示获取过程; 5.保存的数据可方便使用Origin,Sigmaplot,Excel和文本编辑器等打开查看; 6.对获取的数据自动排序; 7.支持三种常规坐标(线形坐标系和两种对数坐标系)的任意组合, ..... 相对于第2版,作了如下优化: 最大的变化是增加了自然对数坐标. 1.加快程序运行速度; 2.优化了数据保存和加载; 3.多线程支持,且不需要额外的库或DLL. 4.以前只支持bmp格式,现在增加jpg格式的图像; 5.其它API函数的优化; 第二版发布信息; 主要功能: 1.可选择精确使用鼠标点击或拖动数据获取图表上的数据; 2.增强的放大镜功能可使数据获取更精确; 3.可剔去冗余、重复和误操作获得的数据; 4.实时动态显示获取过程; 5.保存的数据可方便使用Origin,Sigmaplot,Excel和文本编辑器等打开查看; 6.对获取的数据自动排序; 第一版发布信息: 自动曲线图表数字化软件; 写论文必备的工具之一读取图表上数据的神奇小软件Datadig; 比WinDig更加简单高效 1.支持双线性直角坐标 2.支持双对数直角坐标; 3.支持对数-线性混合坐标; 4.局部放大,便于观察数据细节; 5.动态实时显示获取的数据; 6.支持数据纠错功能,方便删对错误的或重复的数据; 7.支持数据排序; 8.优化数据保存; 9.可对比原始数据和您使用本软件获取的数据; 10.本软件属绿色软件,无插件和病毒,无须注册完全免费使用. 11.绝对禁止使用本软件剽窃他人论文成果,或用于其它非道德和不法途径; 本软件是绿色软件,完全免费,无任何插件和广告,欢迎大家使用!如果您觉得该软件好,请积极反馈你的意见供下次时改进!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值