/// <summary> /// Salva os itens adicionados a tabela no banco de dados /// </summary> private void SaveItensTable() { if (dataGridItens.Rows.Count <= 0) { Alert.Message("Opps", "Selecione pelo menos 1 item para salvar o combo.", Alert.AlertType.error); return; } if (valorvenda.Text == "0,00") { Alert.Message("Opps", "O valor do combo precisa ser maior que zero.", Alert.AlertType.error); return; } var ids = dataGridItens.Rows.Cast <DataGridViewRow>().Aggregate("", (current, item) => current + $"|{item.Cells["ID"].Value}"); _mItemCombo.Nome = nome.Text; _mItemCombo.Produtos = ids.Substring(1); _mItemCombo.ValorVenda = Validation.ConvertToDouble(valorvenda.Text); if (!_mItemCombo.Save(_mItemCombo)) { return; } Close(); }
/// <summary> /// Manipula todos os eventos do form /// </summary> private void Eventos() { KeyDown += KeyDowns; KeyPreview = true; Masks.SetToUpper(this); Shown += (s, e) => { ToolHelp.Show( "Você pode selecionar um produto ou então selecionar uma categoria inteira de produtos.", pictureBox4, ToolHelp.ToolTipIcon.Info, "Ajuda!"); Tipo.SelectedIndex = 0; SetHeadersItens(dataGridItens); if (IdCombo > 0) { LoadData(); } else { _mItemCombo = new ItemCombo { Id = 0 }; _mItemCombo.Save(_mItemCombo); } }; valorvenda.TextChanged += (s, e) => { var txt = (TextBox)s; Masks.MaskPrice(ref txt); }; btnContinue.Click += (s, e) => { switch (Tipo.SelectedItem.ToString()) { case "Produtos": label2.Text = @"Produtos"; AutoCompleteItens(); break; case "Categorias": label2.Text = @"Categorias"; AutoCompleteCategorias(); break; } txtAutoComplete.Enabled = true; btnIncluir.Visible = true; }; btnIncluir.Click += (s, e) => AddItensTable(); btnSalvar.Click += (s, e) => SaveItensTable(); btnExit.Click += (s, e) => Close(); btnRemoverSelecionados.Click += (s, e) => { var toBeDeleted = new List <DataGridViewRow>(); toBeDeleted.Clear(); var result = AlertOptions.Message("Atenção!", "Você está prestes a remover os ITENS selecionados, continuar?", AlertBig.AlertType.warning, AlertBig.AlertBtn.YesNo); if (result) { foreach (DataGridViewRow item in dataGridItens.Rows) { Console.WriteLine(item.Cells["Selecione"].Value); if ((bool)item.Cells["Selecione"].Value) { toBeDeleted.Add(item); } } toBeDeleted.ForEach(d => dataGridItens.Rows.Remove(d)); } btnRemoverSelecionados.Visible = false; }; dataGridItens.CellContentClick += (s, e) => { if (dataGridItens.Columns[e.ColumnIndex].Name == "Selecione") { if ((bool)dataGridItens.SelectedRows[0].Cells["Selecione"].Value == false) { dataGridItens.SelectedRows[0].Cells["Selecione"].Value = true; btnRemoverSelecionados.Visible = true; } else { dataGridItens.SelectedRows[0].Cells["Selecione"].Value = false; var hideBtns = false; foreach (DataGridViewRow item in dataGridItens.Rows) { if ((bool)item.Cells["Selecione"].Value) { hideBtns = true; } } btnRemoverSelecionados.Visible = hideBtns; } } }; dataGridItens.CellMouseEnter += (s, e) => { if (e.ColumnIndex < 0 || e.RowIndex < 0) { return; } var dataGridView = s as DataGridView; if (dataGridItens.Columns[e.ColumnIndex].Name == "Selecione") { dataGridView.Cursor = Cursors.Hand; } }; dataGridItens.CellMouseLeave += (s, e) => { if (e.ColumnIndex < 0 || e.RowIndex < 0) { return; } var dataGridView = s as DataGridView; if (dataGridItens.Columns[e.ColumnIndex].Name == "Selecione") { dataGridView.Cursor = Cursors.Default; } }; }