Esempio n. 1
0
        public void Setup(ClsBindGrid GridDef, DataTable Dt_Source)
        {
            List<ClsBindGridColumn> GridDef_Columns = GridDef.pColumns;

            this.mFilterFields = new List<UcFilter_Field>();

            foreach (
                ClsBindGridColumn Item_Gc
                in (from O in GridDef_Columns where O.pIsFilter == true select O))
            {
                UcFilter_Field Field = new UcFilter_Field();
                Field.FieldName = Item_Gc.pFieldName;
                Field.FieldDesc = Item_Gc.pFieldDesc;

                if (Dt_Source.Columns.Contains(Item_Gc.pFieldName))
                { Field.DataType = Dt_Source.Columns[Item_Gc.pFieldName].DataType; }

                this.mFilterFields.Add(Field);
            }

            Layer01_Methods.BindCombo(this.Cbo_Field, this.mFilterFields, "FieldDesc", "FieldName");

            //[-]

            this.mDt_FilterItems = new DataTable();
            this.mDt_FilterItems.Columns.Add("Key", typeof(Int64));
            this.mDt_FilterItems.Columns.Add("Field", typeof(String));
            this.mDt_FilterItems.Columns.Add("Field_Condition", typeof(String));
            this.mDt_FilterItems.Columns.Add("Btn_Delete", typeof(String));

            Layer01_Methods_C1.InitializeGrid(this.Grid_Filters);
            this.Grid_Filters.FilterBar = false;
            this.Grid_Filters.AllowFilter = false;
            this.Grid_Filters.DataSource = this.mDt_FilterItems;

            ClsBindGrid GridDef_FilterItems = new ClsBindGrid();
            GridDef_FilterItems.pColumns.Add(new ClsBindGridColumn("Field", "Field", 100));
            GridDef_FilterItems.pColumns.Add(new ClsBindGridColumn("Field_Condition", "Condition", 200));
            GridDef_FilterItems.pColumns.Add(new ClsBindGridColumn("Btn_Delete", "", 100, "", Layer01_Constants.eSystem_Lookup_FieldType.FieldType_Button, Layer01_Constants.eSystem_Lookup_HorizontalAlign.Grid_HorizontalAlign_Center));

            Layer01_Methods_C1.BindGrid_SetColumns(this.Grid_Filters, GridDef_FilterItems);

            this.Setup_EventHandlers();
        }
Esempio n. 2
0
        void AddFilter(UcFilter_Field Field, String FilterText)
        {
            QueryCondition.Str_QueryCondition New_Qc = this.mQc.Add(Field.FieldName, FilterText, Field.DataType.Name);
            Int64 LastKey = 0;

            if (this.mConditions.Any())
            { LastKey = this.mConditions.Max(O => O.Key); }

            LastKey++;

            this.mConditions.Add(LastKey, New_Qc);

            Do_Methods.AddDataRow(
                ref this.mDt_FilterItems
                , new String[] { "Key", "Field", "Field_Condition", "Btn_Delete" }
                , new Object[] { LastKey, Field.FieldName, New_Qc.Operator + " " + Do_Methods.Convert_String(New_Qc.Value), "Remove" });

            if (this.EvFilter != null)
            { this.EvFilter(this.mQc); }
        }