Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Exercício 3 aula 7

Boa tarde; Não estou conseguindo exibir o nome do Titular dentro do comboBox, ao invés de aparecer o nome do Titular, está aparecendo "FinalComponentes.Cliente".

Segue o código:

 private void Form1_Load(object sender, EventArgs e)
        {

            contas = new Conta[2];

            Conta dadosConta1 = new Conta(500);
            Cliente dadosCliente1 = new Cliente("José",29);
            dadosConta1.titular = dadosCliente1;
            dadosConta1.numeroConta = 1234;
            contas[0] = dadosConta1;

            Conta dadosConta2 = new Conta(600);
            Cliente dadosCliente2 = new Cliente("Maria,25);
            dadosConta2.titular = dadosCliente2;
            dadosConta2.numeroConta = 5678;
            contas[1] = dadosConta2;

            foreach(Conta c in contas) 
            {
                cbxContas.Items.Add(c.titular);
            }     
        }
2 respostas

Olá, Denise!

O seu código está um pouco diferente do exercício, pelo que percebi.

O problema está nessa linha:

cbxContas.Items.Add(c.titular);

No exercício, a propriedade Titular é uma string, mas no seu código ela é um objeto do tipo Cliente. Como você está inserindo o titular ao combo box, em vez de adicionar strings, você está adicionando objetos da classe Cliente. Internamente, o C# está convertendo implicitamente esses objetos Cliente para string, utilizando o método ToString(). Por isso mesmo, os itens do combo box estão todos como "FinalComponentes.Cliente", que é a identificação completa da classe Cliente.

Então você vai ter que acessar a propriedade Nome do titular (Classe Cliente) ao adicionar ao combo box.

Substitua essa linha por:

cbxContas.Items.Add(c.titular.Nome);

Boa sorte e bons estudos!

solução!

Oi Marcelo, Alterei aqui e deu certo, muito obrigada.

Sobre o meu código, eu estou sentindo que não esta tendo continuação nas tarefas, pois no começo do curso temos que fazer com que o Saldo seja protected, que devemos passar o nome do Cliente, etc e dai na próxima atividade não tem nada disso, nada é protegido. Como eu quero fazer a minha implementação utilizando os protegidos e privados, o meu código esta ficando um pouco diferente mesmo :(