//Botao de transferência private void botaoTransferenciaDestino_Click(object sender, EventArgs e) { Conta contaDestino = (Conta)comboDestinoTransferencia.SelectedItem; Conta contaOrigem = (Conta)comboIndice.SelectedItem; string valorDigitado = TextoValor.Text; double valorOperacao = Convert.ToDouble(valorDigitado); try { //Conta origem //int indiceOrigem = Convert.ToInt32(comboIndice.SelectedIndex); //Conta origem = this.contas[indiceOrigem]; //Conta destino //int indiceDestino = Convert.ToInt32(comboDestinoTransferencia.SelectedIndex); //Conta destino = this.contas[indiceDestino]; //Transfere o valor para a conta destino contaOrigem.Transfere(valorOperacao, contaDestino); //Atualiza o saldo após a transferência TextoSaldo.Text = Convert.ToString(contaOrigem.Saldo); } catch (Exception) { MessageBox.Show("Erro ao tentar realizar transferência!!"); } }
} // fim comboContas_SelectedIndexChanged /// <summary> /// Método executado quando o botão de transferência é clicado. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void botaoTransfere_Click(object sender, EventArgs e) { // Recupera o índice de origem selecionado no menu da combo de contas e recupera a conta no vetor var indice = comboContas.SelectedIndex; Conta selecionada = this.contas[indice]; // Recupera o índice de destino selecionado no menu da combo de destino e recupera a conta no vetor var indiceDestino = comboDestino.SelectedIndex; Conta destino = this.contas[indice]; // Recuperando o valor digitado no campo valor do formulário. Como o valor digitado é um texto, ele vem como String. // Eu preciso converter esse valor para um double. Para isso, usamos a classe utilitária do .NET conhecida como "Convert" // Essa classe converte um texto para qualquer valor e qualquer número para um texto. Se quiser saber mais sobre a classe Convert e seus métodos, é só buscar por ela na MSDN. // Aqui eu declarei a variável valor como "var". A variável valor será do tipo do primeiro valor que receber. // Nesse caso aqui, ela será do tipo double. Lembrando que só podemos usar o operador "var" em métodos. var valor = Convert.ToDouble(textoValor.Text); // Realiza a transferência entre contas passando o valor e a conta destino. selecionada.Transfere(destino, valor); // Atualiza o campo saldo do formulario, com o novo saldo depois de fazer a transferência. textoSaldo.Text = Convert.ToString(selecionada.Saldo); // Exibe uma mensagem informando que a transferência foi realizada com sucesso. MessageBox.Show("Transferência realizada com sucesso!!!"); } // fim botaoTransfere_Click
public static void Transferir(Conta c) { Conta outro = new ContaCorrente(); Console.Write("Transferir: "); c.Transfere(Convert.ToDouble(Console.ReadLine()), outro); }
private void BotaoTransfere_Click(object sender, EventArgs e) { int indice = comboContas.SelectedIndex; Conta selecionada = this.contas[indice]; int indiceTransferencia = comboContaRecebeTransferencia.SelectedIndex; Conta recebeTransferencia = this.contas[indiceTransferencia]; double valor = Convert.ToDouble(textoValor.Text); selecionada.Transfere(valor, recebeTransferencia); textoSaldo.Text = selecionada.Saldo.ToString("C", CultureInfo.CreateSpecificCulture("pt-BR")); textoSaldoTransferencia.Text = recebeTransferencia.Saldo.ToString("C", CultureInfo.CreateSpecificCulture("pt-BR")); }
private void button3_Click(object sender, EventArgs e) { int indiceOrigem = comboContas.SelectedIndex; Conta origem = this.contas[indiceOrigem]; int indiceDestino = comboDestinoTransferencia.SelectedIndex; Conta destino = this.contas[indiceDestino]; double valor = Convert.ToDouble(textoValor.Text); origem.Transfere(valor, destino); AtualizaSaldo(origem); }
private void buttonTransferir_Click(object sender, EventArgs e) { int indice = comboContas.SelectedIndex; int indice2 = comboDestinoTransferencia.SelectedIndex; Conta destino = contas[indice2]; Conta selecionada = contas[indice]; string valorDigitado = textoValorTransferir.Text; double valor = Convert.ToDouble(valorDigitado); try { selecionada.Transfere(destino, valor); textoSaldo.Text = Convert.ToString(selecionada.Saldo); MessageBox.Show("Operação Realizada com Sucesso!"); } catch (SaldoInsuficienteException) { MessageBox.Show("Não há saldo suficiente para essa operação."); } catch (ArgumentException) { MessageBox.Show("Valor inválido."); } }