private void HabilitDataGridView(DtvTypes type)
        {
            dtvBankAccount.Visible = false;
            dtvCreditCard.Visible  = false;
            dtvCategorias.Visible  = false;
            dtvEntries.Visible     = false;
            dtvEntries2.Visible    = false;

            if (type == DtvTypes.Account)
            {
                dtvBankAccount.Visible = true;
            }
            else if (type == DtvTypes.CreditCard)
            {
                dtvCreditCard.Visible = true;
            }
            else if (type == DtvTypes.Entries)
            {
                dtvEntries.Visible = true;
            }
            else if (type == DtvTypes.Categories)
            {
                dtvCategorias.Visible = true;
            }
            else if (type == DtvTypes.Transfer)
            {
                dtvEntries2.Visible = true;
            }
            else
            {
                dtvEntries.Visible = true;
            }
        }
        public void LoadDtvCategories(DataGridView dtv, DtvTypes type, Report report)
        {
            int    i, j, qtdEntry;
            double valueExpense = 0.00;
            bool   addRow       = false;
            string description;

            i = 0;
            List <EntryExpenses> entries = new List <EntryExpenses>();
            List <Category>      cats    = new List <Category>();
            List <SubCategories> subCats = new List <SubCategories>();

            dtv.Rows.Clear();

            dtv.Columns[0].Name = type == DtvTypes.Categories ? "Categoria" : "SubCategoria";

            foreach (var entry in report.EntryExpenses)
            {
                entries.Add(entry);
            }

            foreach (var entry in report.EntryRevenue)
            {
                entries.Add(entry);
            }


            entries = entries.OrderBy(e => e.Date).ToList();

            foreach (var cat in report.Categories)
            {
                j            = 1;
                valueExpense = 0.00;
                qtdEntry     = 0;
                addRow       = false;
                description  = "";

                foreach (var entry in entries)
                {
                    if (entry.Category.Id == cat.Id)
                    {
                        valueExpense += entry.Value;
                        qtdEntry++;
                        addRow      = true;
                        description = type == DtvTypes.Categories ? cat.Description : entry.SubCategory.Description;
                    }

                    if (entries.Count == j && addRow)
                    {
                        dtv.Rows.Add();
                        dtv.Rows[i].Cells[0].Value = description;
                        dtv.Rows[i].Cells[1].Value = valueExpense;
                        dtv.Rows[i].Cells[2].Value = entry.EntryType == EntryType.Expense ? "Despesa" : "Receita";
                        dtv.Rows[i].Cells[3].Value = qtdEntry;
                        i++;
                    }
                    j++;
                }
            }
        }