예제 #1
0
        public ExpensesPage()
        {
            InitializeComponent();
            NavigationPage.SetHasNavigationBar(this, false);

            ToolbarItems.Add(new ToolbarItem("Add", "ic_add", async() => {
                await Navigation.PushModalAsyncUnique(new NavigationPage(new AddIncomePage.AddIncomePage()));
            }));

            var tapGestureRecognizer = new TapGestureRecognizer();

            tapGestureRecognizer.Tapped += (sender, e) => {
                var selectDateRangePage = new SelectDateRangePage {
                    OnConfirmCommand = new Command <SelectDateRangePage.FilterDateRange>(async(obj) => {
                        await UpdateWithDateRange(obj.StartDate, obj.EndDate);
                    })
                };
                Navigation.PushModalAsyncUnique(new AppNavigationPage(selectDateRangePage));
            };

            filterFrame.GestureRecognizers.Add(tapGestureRecognizer);

            if (DesignMode.IsDesignModeEnabled)
            {
                return;
            }
            using (var scope = App.Container.BeginLifetimeScope()) {
                if (scope.Resolve <ExpensesPageViewModel>() is ExpensesPageViewModel viewModel)
                {
                    BindingContext = viewModel;
                    this.viewModel = viewModel;
                }
            }
        }
예제 #2
0
        /// <summary>
        /// Public ctor.
        /// </summary>
        public ExpensesPage()
        {
            InitializeComponent();

            BindingContext = _viewModel = new ExpensesPageViewModel();

            InitilizeChart();
        }