public PaginaInicial()
        {
            InitializeComponent();
            viewModel           = new PaginaInicialViewModel();
            this.BindingContext = viewModel;

            MostraDados();

            // usuário terminou de editar ou inserir um registro
            MessagingCenter.Subscribe <Application, Models.DespesaModel>(this, "CadastraDespesa",
                                                                         (sender, arg) =>
            {
                // atualiza dados no banco de dados local
                DespesaTable.InsertUpdateDados(arg.Id, arg.Descricao, arg.Valor, arg.Pago, arg.DataVencimento);


                MostraDados();
            });

            MessagingCenter.Subscribe <Application, Models.DespesaModel>(this, "DeleteDados",
                                                                         (sender, arg) =>
            {
                // apaga evento no banco de dados local
                DespesaTable.RemoveRegistro(arg.Id);

                // atualiza lista
                MostraDados();
            });
        }
        public void MostraDados()
        {
            List <DespesaModel> lista = DespesaTable.GetDespesas();

            if (lista == null)
            {
                viewModel.Despesas = new ObservableCollection <DespesaModel>();
            }
            else
            {
                viewModel.Despesas = new ObservableCollection <DespesaModel>(lista);
            }



            viewModel.InformaAlteracao("Despesas");
            viewModel.InformaAlteracao("Descricao");
            viewModel.InformaAlteracao("Valor");
            viewModel.InformaAlteracao("Pago");
            viewModel.InformaAlteracao("DataVencimento");
        }