Ejemplo n.º 1
0
        //--------------------------------------------------------------------------
        #region ** ctor

        public ViewModel()
        {
            // load basic data
            LoadRawData();

            // generate orders
            GenerateOrders();

            // create list of distinct quarters we have sales for
            var lq = new List<string>();
            var qryQtr = from Order o in _orders select o.Quarter;
            foreach (var q in qryQtr.Distinct())
            {
                lq.Add(q);
            }
            _quarters = new CollectionViewSource();
            _quarters.Source = lq;
            Quarters.CurrentChanged += _quarters_CurrentChanged;

            // create sales by Customer and by Category lists (filtered by Quarter)
            CreateSalesByCustomer();
            CreateSalesByCategory();

            // create commands to navigate quarters
            _cmdFirstQuarter = new SelectQuarter(this, int.MaxValue);
            _cmdPrevQuarter = new SelectQuarter(this, +1);
            _cmdNextQuarter = new SelectQuarter(this, -1);
            _cmdLastQuarter = new SelectQuarter(this, int.MinValue);

            // update properties
            _quarters_CurrentChanged(this, EventArgs.Empty);
        }
Ejemplo n.º 2
0
        //--------------------------------------------------------------------------
        #region ** ctor

        public ViewModel()
        {
            // load basic data
            LoadRawData();

            // generate orders
            GenerateOrders();

            // create list of distinct quarters we have sales for
            var lq     = new List <string>();
            var qryQtr = from Order o in _orders select o.Quarter;

            foreach (var q in qryQtr.Distinct())
            {
                lq.Add(q);
            }
            _quarters                = new CollectionViewSource();
            _quarters.Source         = lq;
            Quarters.CurrentChanged += _quarters_CurrentChanged;

            // create sales by Customer and by Category lists (filtered by Quarter)
            CreateSalesByCustomer();
            CreateSalesByCategory();

            // create commands to navigate quarters
            _cmdFirstQuarter = new SelectQuarter(this, int.MaxValue);
            _cmdPrevQuarter  = new SelectQuarter(this, +1);
            _cmdNextQuarter  = new SelectQuarter(this, -1);
            _cmdLastQuarter  = new SelectQuarter(this, int.MinValue);

            // update properties
            _quarters_CurrentChanged(this, EventArgs.Empty);
        }