示例#1
0
        //добавление нового
        private MultiSelectFilter AddMult()
        {
            if (fMult.YesCount == 0)
            {
                WinFormsServ.Error("Не выбраны значения!");
                return(null);
            }

            MultiSelectFilter msf = new MultiSelectFilter(_currentItem, fMult.GetSelectedItems(), _current);

            return(msf);
        }
        public DashboardFilterViewModel()
        {
            DateRangeFilter = new DateRangeFilter();
            NoteFilter      = new TextFilter();
            AccountsFilter  = new MultiSelectFilter();
            CategoryFilter  = new MultiSelectFilter();
            DirectionFilter = new DirectionFilter();
            _anyFilter      = new CompositeFilter(DateRangeFilter, NoteFilter, AccountsFilter, CategoryFilter, DirectionFilter);
            _anyFilter.FilterInvalidated += OnAnyFilterInvalidated;

            ResetFilterCommad = new RelayCommand(Reset, () => IsFiltering);
        }
示例#3
0
        private MultiFromToFilter AddExams()
        {
            if (fMult.YesCount == 0)
            {
                WinFormsServ.Error("Не выбраны значения!");
                return(null);
            }
            if (!fFromTo.CheckValues())
            {
                return(null);
            }

            FromToFilter      ftf = new FromToFilter(new FilterItem("Оценка", FilterType.FromTo, "temp.markvalue", null), fFromTo.FromValue, fFromTo.ToValue, _current);
            MultiSelectFilter msf = new MultiSelectFilter(new FilterItem("Экзамены", FilterType.Multi, "qMark.ExamInprogramId", null), fMult.GetSelectedItems(), _current);

            return(new MultiFromToFilter(_currentItem, msf, ftf, _current));
        }
        public GmcManagerFilterViewModel()
        {
            FilterOnItemDateCommand = new RelayCommand <BasicTransactionModel>(FilterOnItemDate);

            var deltaFilterData = new Dictionary <string, IList <DeltaAction> >
            {
                { "to add", new[] { DeltaAction.Add } },
                { "to update", new[] { DeltaAction.UpdateMemo } },
                { "to remove", new[] { DeltaAction.Remove } },
                { "undeterministic status", new[] { DeltaAction.MultipleTargetsPossible, DeltaAction.NotUniqueKeyInTarget } },
                { "up to date", new[] { DeltaAction.Nothing } }
            };

            DeltaFilter = new MultiSelectFilter();
            DeltaFilter.Initialize(deltaFilterData, kv => kv.Key, kv => kv.Value);
            DateFilter = new DateRangeFilter();
            MemoFilter = new TextFilter();
            _anyFilter = new CompositeFilter(DeltaFilter, DateFilter, MemoFilter);
            _anyFilter.FilterInvalidated += OnAnyFilterInvalidated;

            ResetFilterCommad = new RelayCommand(Reset, () => IsFiltering);
        }
示例#5
0
        //реакция на тычок по созданному фильтру
        private void lbFilters_SelectedIndexChanged(object sender, EventArgs e)
        {
            if (lbFilters.SelectedIndex < 0)
            {
                btnChange.Enabled = false;
                return;
            }
            else
            {
                btnChange.Enabled = true;
            }

            //если жмут по стрелкам, ничего не происходит
            if (flag)
            {
                flag = false;
                return;
            }

            object obj = lbFilters.SelectedItem;

            if (obj is Bracket)
            {
                btnUp.Enabled = btnDown.Enabled = false;
            }
            else
            {
                btnUp.Enabled = btnDown.Enabled = true;
            }

            if (!(obj is Filter))
            {
                return;
            }

            Filter filter = obj as Filter;

            //проставили в комбик нужный фильтр
            cmbFilters.SelectedIndex = filter.NumInList;

            if (filter is BoolFilter)
            {
                BoolFilter bf = filter as BoolFilter;
                fBool.Value = bf.Value;
            }
            else if (filter is DateFromToFilter)
            {
                DateFromToFilter dftf = filter as DateFromToFilter;

                fDateFromTo.FromValue = dftf.FromValue;
                fDateFromTo.ToValue   = dftf.ToValue;
            }
            else if (filter is FromToFilter)
            {
                FromToFilter ftf = filter as FromToFilter;

                fFromTo.FromValue = ftf.FromValue;
                fFromTo.ToValue   = ftf.ToValue;
            }
            else if (filter is MultiSelectFilter)
            {
                MultiSelectFilter msf = filter as MultiSelectFilter;

                FillMulti();
                fMult.FillList(msf.List, false);

                foreach (ListItem li in msf.List)
                {
                    fMult.RemoveAtRight(li.Name);
                }
            }
            else if (filter is TextFilter)
            {
                TextFilter tf = filter as TextFilter;

                fText.Text = tf.Value;
            }
            else if (filter is MultiFromToFilter)
            {
                MultiSelectFilter msf = (filter as MultiFromToFilter).MultiSelectFilter;

                FillMulti();
                fMult.FillList(msf.List, false);

                foreach (ListItem li in msf.List)
                {
                    fMult.RemoveAtRight(li.Name);
                }

                FromToFilter ftf = (filter as MultiFromToFilter).FromtoFilter;

                fFromTo.FromValue = ftf.FromValue;
                fFromTo.ToValue   = ftf.ToValue;
            }
        }