GridControl 继承写法修改自己的GridControl

namespace GridControlDemo
{
    class MyGridControl : GridControl
    {
        protected override BaseView CreateDefaultView()
        {
            return CreateView("MyGridView");
        }
        protected override void RegisterAvailableViewsCore(InfoCollection collection)
        {
            base.RegisterAvailableViewsCore(collection);
            collection.Add(new MyGridViewInfoRegistrator());
        }
    }

    public class MyGridViewInfoRegistrator : GridInfoRegistrator
    {
        public override string ViewName { get { return "MyGridView"; } }
        public override BaseView CreateView(GridControl grid)
        {
            return new MyGridView(grid as GridControl);
        }
    }

    public class MyGridView : GridView
    {
        /// <summary>
        ///函数
        /// </summary>
        /// <param name="ownerGrid"></param>
        public MyGridView(GridControl ownerGrid) : base(ownerGrid) { }

        /// <summary>
        /// 函数
        /// </summary>
        public MyGridView()
        {

        }

        /// <summary>
        /// 初始化一些默认值
        /// </summary>
        public override void BeginInit()
        {
            base.BeginInit();
            // 设置为多选
            this.OptionsSelection.MultiSelect = true;
            this.OptionsSelection.MultiSelectMode = DevExpress.XtraGrid.Views.Grid.GridMultiSelectMode.RowSelect;
            this.FocusedRowHandle = 0;
            this.Focus();
            //显示筛选
            this.OptionsView.ShowAutoFilterRow = true;
            //隐藏提示
            this.OptionsView.ShowGroupPanel = false;
            //禁止编辑
            this.OptionsBehavior.Editable = false;
            this.OptionsView.EnableAppearanceEvenRow = false; //是否启用偶数行外观
            this.OptionsView.EnableAppearanceOddRow = false; //是否启用奇数行外观
            this.OptionsView.ShowFilterPanelMode = ShowFilterPanelMode.Never; //是否显示过滤面板

            this.OptionsCustomization.AllowColumnMoving = false; //是否允许移动列
            this.OptionsCustomization.AllowColumnResizing = false; //是否允许调整列宽
            this.OptionsCustomization.AllowGroup = false; //是否允许分组
            this.OptionsCustomization.AllowFilter = false; //是否允许过滤
            this.OptionsCustomization.AllowSort = true; //是否允许排序
        }

        public override void EndInit()
        {
            base.EndInit();
            this.SelectionChanged += MyGridView_SelectionChanged;
        }

        void MyGridView_SelectionChanged(object sender, DevExpress.Data.SelectionChangedEventArgs e)
        {
            int[] grvarry = this.GetSelectedRows();
            if (grvarry.Length > 1)
            {
               /* for (int i = 0; i < grvarry.Length; i++)
                {
                    GetDataRowList[i] = this.GetDataRow(grvarry[i]);
                }*/
                GetList = grvarry;

            }
            else
            {
                GetDataRowInfo = this.GetFocusedDataRow();
            }
            //GetDataRowInfo = this.GetFocusedDataRow();
        } 

        /// <summary>
        /// 获取用户选择行数据
        /// </summary>
        public DataRow GetDataRowInfo { get; set; }
        /// <summary>
        /// 返回选择行数组
        /// </summary>
        public DataRow[] GetDataRowList { get; set; }
        /// <summary>
        /// 返回用户选择行索引
        /// </summary>
        public int[] GetList { get; set; }
    }
}
时间: 2024-10-07 05:24:57

GridControl 继承写法修改自己的GridControl的相关文章

ThinkPHP模板继承和修改title

先说下模板继承: 假定:在View文件夹中 -> Public  公共模块 ->base/header/top/footer 4个html文件 这下面base文件使用include引入其他3个文件,其中title用block标签,给个name属性,在不同的模板中可以实用block来重新定义title值, block 标签,属性是main的可以,在不同的模板的写不同的内容 <!DOCTYPE html> <html lang="en"> <hea

拦截器配置类使用继承写法导致jackson的全局配置失效

问题描述 项目中需要一个拦截器用于拦截请求,在没有请求中生成requestId.然后写了一个配置类,这个类继承了 WebMvcConfigurationSupport类,重写了addInterceptors 方法,来实现拦截器的注册.正当一切顺利的时候,我发现我jackson的全局配置失效了. 该配置类的写法 @Configuration public class MvcInterceptorConfig extends WebMvcConfigurationSupport { @Resourc

小程序修改数组的值的写法/修改字符串的值的写法

原文地址:https://www.cnblogs.com/antyhouse/p/9337494.html

dev gridcontrol控件手动添加一行数据

很多时候我们真的只想单纯的手动添加一行数据,而不想修改数据源再回来绑定.如果你有这种想法,那么我可以负责任的告诉你:做不到! 我已经两次遇到过这样的问题,尝试手动添加,整整两天时间都没有成功.网上说的方法基本都是绑定数据源,偶尔有人说用SetRowCellValue方法,用法如下: gridView1.SetRowCellValue(0, gridView1.Columns[0], "qwe"); 即在0行0列的单元格设为qwe值,看起来多好,可问题是它就是不显示,更改了无数属性都无法

【WPF】GridControl的使用

一.前言 在WPF中我们常常使用DataGrid来显示数据,在Dev中也有一个类似的控件-GridControl. 二.范例 <dxg:GridControl Grid.Row="1" ItemsSource="{Binding SelectedSummaryInfos}" Margin ="5" > <dxg:GridControl.View > <dxg:TableView Name="SummaryT

Devexpress GridControl.Export

private void mnuExportTable_ItemClick_1(object sender, DevExpress.XtraBars.ItemClickEventArgs e) { using (SaveFileDialog saveDialog = new SaveFileDialog()) { saveDialog.Filter = "Excel (2003)(.xls)|*.xls|Excel (2010) (.xlsx)|*.xlsx |RichText File (.r

cocos2d-x for js 继承的写法

cocos2d-x for js中集成了两套继承写法,一套是JR的(jquery的作者),一套是google. 目前来说,cocos2d-x for js demo使用JR的写法----未完待续... http://goldlion.blog.51cto.com/4127613/1127112

Python之继承

继承是所有开发语言的必修内容,而本文写的只是Python继承中的特殊之处,关于继承概念及内容可以自行百度(不装B,感觉百度挺好的) 1.构造函数: 要说继承,先要说一下构造函数.Java要求是与类名相同并且无返回值,而Python则是强制要求命名为"__init__()". 当创建类的对象时,会自动先调用构造函数,一般用于初始化.构造函数可以不写,那么程序会隐式自动增加一个空的构造函数. 2.继承写法: (1).class 空格 类名称 括号内填写父类名 冒号 具体写法如下 class

深入理解JS原型链与继承

我 觉得阅读精彩的文章是提升自己最快的方法,而且我发现人在不同阶段看待同样的东西都会有不同的收获,有一天你看到一本好书或者好的文章,请记得收藏起来, 隔断时间再去看看,我想应该会有很大的收获.其实今天要讨论的主题,有许多人写过许多精彩的文章,但是今天我还是想把自己的理解的知识记录下来.我在学习 掌握JS原型链和继承的时候,就是看得@阮一峰老师的写的文章,觉得他写的技术类的文章都容易让理解,简明概要,又好理解.他是我学习JS路程里面一个比较佩服的导师,昨天重新看了他写的<Javascript 面向