//Ao mudar de cliente selecionado atualiza a lista dos carros private void listBoxClientes_SelectedIndexChanged(object sender, EventArgs e) { if (listBoxClientes.SelectedIndex != -1 || listBoxCarros.SelectedIndex != -1 || listBoxServicos.SelectedIndex != -1) { try { Cliente clienteSelecionado = (Cliente)listBoxClientes.SelectedItem; Servico servicoSelecionado = (Servico)listBoxServicos.SelectedItem; Parcela parcelaSelecionada = (Parcela)listBoxParcelas.SelectedItem; listBoxServicos.DataSource = null; listBoxParcelas.DataSource = null; labelNome.Text = clienteSelecionado.Nome; labelNIF.Text = clienteSelecionado.NIF.ToString(); labelMorada.Text = clienteSelecionado.Morada; if (listBoxCarros.SelectedIndex < 0) { labelValorTotal.Text = "0"; } atualizarListaCarros(clienteSelecionado); } catch (Exception) { return; } } }
//Adiciona uma parcela ao serviço selecionado private void buttonCriarParcela_Click(object sender, EventArgs e) { if (listBoxClientes.SelectedIndex == -1 || listBoxCarros.SelectedIndex == -1 || listBoxServicos.SelectedIndex == -1) { return; } Cliente clienteSelecionado = new Cliente(); CarroOficina carroOficinaSelecionado = new CarroOficina(); Servico servicoSelecionado = new Servico(); clienteSelecionado = (Cliente)listBoxClientes.SelectedItem; carroOficinaSelecionado = (CarroOficina)listBoxCarros.SelectedItem; servicoSelecionado = (Servico)listBoxServicos.SelectedItem; if (string.IsNullOrEmpty(textBoxValorParcela.Text) || string.IsNullOrEmpty(textBoxDescricaoParcela.Text)) { return; } int ValorParcela = 0; if (!int.TryParse(textBoxValorParcela.Text, out ValorParcela)) { MessageBox.Show("Erro ao introduzir valor", "Valor incorreto: " + textBoxValorParcela.Text); return; } Parcela novaParcela = new Parcela { Valor = ValorParcela, Descricao = textBoxDescricaoParcela.Text }; servicoSelecionado.Parcelas.Add(novaParcela); listBoxParcelas.SelectedItem = novaParcela; myDb.SaveChanges(); LerDados(); }