コード例 #1
0
        /// <summary>
        /// 创建高级查询控件。
        /// </summary>
        /// <param name="viewGridForm"></param>
        public void IniLoadFilterControl(IClientRuleQueryBase clientRuleObject, DevExpress.XtraGrid.GridControl mainGridCtl)
        {
            try {
                if (_FilterControl == null)
                {
                    DevExpress.XtraGrid.Views.Grid.GridView gridView = mainGridCtl.DefaultView as DevExpress.XtraGrid.Views.Grid.GridView;
                    _FilterControl = new XGridFilterControl(clientRuleObject.UIRuleXmlConfigInfo.GetDefaultColumns());

                    DevExpress.XtraEditors.Filtering.FilterColumnCollection filterColumns = new DevExpress.XtraGrid.FilterEditor.ViewFilterColumnCollection(gridView);
                    var createColumns = createFilterColumn(clientRuleObject, filterColumns);
                    _FilterControl.SortFilterColumns = false;
                    _FilterControl.SetFilterColumnsCollection(createColumns, mainGridCtl.MenuManager);

                    _FilterControl.ShowOperandTypeIcon = gridView.OptionsFilter.UseNewCustomFilterDialog;
                    _FilterControl.Dock = DockStyle.Fill;
                    panMain.Controls.Add(_FilterControl);
                    _TemplateEditHelper = new FilterTemplateEditHelper(clientRuleObject, cobFilterTemplate);
                    //加载模板
                    _FilterTemplates = _TemplateEditHelper.LoadFilterTemplate();
                }
                _FilterControl.BringToFront();
            }
            catch (Exception e) {
                MB.Util.TraceEx.Write("加载高级查询出错:" + e.Message);
                throw new MB.Util.APPException("当前模块可能还没有提供相应的高级查询功能,请检查相应的配置信息!", MB.Util.APPMessageType.DisplayToUser);
            }
        }
        public Form1()
        {
            InitializeComponent();

            InitData();
            gridControl1.DataSource = dv;

            DevExpress.XtraGrid.FilterEditor.ViewFilterColumnCollection columnCollection = new DevExpress.XtraGrid.FilterEditor.ViewFilterColumnCollection(gridView1);
            RepositoryItemPopupContainerEdit ri = new RepositoryItemPopupContainerEdit();

            ri.PopupControl           = popupContainerControl1;
            ri.CloseOnOuterMouseClick = false;
            ri.QueryResultValue      += new DevExpress.XtraEditors.Controls.QueryResultValueEventHandler(ri_QueryResultValue);
            ri.QueryPopUp            += new CancelEventHandler(ri_QueryPopUp);
            columnCollection["Date"].SetColumnEditor(ri);
            columnCollection["ID"].SetColumnEditor(new RepositoryItemCalcEdit());
            filterControl1.SetFilterColumnsCollection(columnCollection);
        }