private async void btnAddProduto_Click(object sender, System.EventArgs e) { var material = lookUpMaterialSerra1.Produto; if (material == null) { XMessageIts.Mensagem("Informe o material produzido!"); } else { int qtde = ParseUtil.ToInt(txtQuantidadePeca.Text); if (qtde <= 0) { XMessageIts.Advertencia("Informe a quantidade produzida!", "Atenação"); } else { //usando initializer var itemProduzido = new ProducaoSerra(_serra, material, _user, dateEditDtProducao.DateTime, qtde); try { var result = _materiaisProduzido .First(i => i.Material.NomeMaterial == itemProduzido.Material.NomeMaterial); if (chAtualizar.Checked) { var r = this._materiaisProduzido.Find(i => i.IdMaterial == itemProduzido.IdMaterial); r.QuantidadePeca += itemProduzido.QuantidadePeca; r.Update(r); lblMessage.Text = "Material:" + r.Material + " foi atualizado!"; lookUpMaterialSerra1.RequestFocus(); flyoutPanelControl1.Visible = true; flyoutPanel1.ShowPopup(); SoundUtil.Beep(); atualizarGrid(); } else { XMessageIts.Mensagem("Material \"" + result.Material + "\" já foi adicionado!\n\n" + "Você pode alterar a quantidade diretamente na tabela.", "Atenção - Produto já foi adicionado !!!"); } } catch (Exception) { this._materiaisProduzido.Add(itemProduzido); lookUpMaterialSerra1.Focus(); lookUpMaterialSerra1.RequestFocus(); atualizarGrid(); } await Task.Run(() => hideThenShow()); } } }