Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Estou com dúvida Tópicos Avançados no curso de C#, na aula Namespace

Boa tarde, Terminei todo a aula, mas na hora que carrego as as informações do frame, o nome do Cliente vem "Caelum.Caixa_Eletronico.Usuarios.Cliente" e deveria vir "victor".

Abaixo onde carrego o frame e o mostra conta:

private void Form1_Load(object sender, EventArgs e) {

this.conta = new Conta(); this.conta.Titular = new Cliente("Victor"); this.conta.Numero = 10; this.conta.Deposita(100.0);

this.MostraConta();

}

private void MostraConta() { textoNumero.Text = Convert.ToString(this.conta.Numero); TextoTitular.Text = Convert.ToString(this.conta.Titular); textoSaldo.Text = Convert.ToString(this.conta.Saldo); }

Abaixo a classe conta:

public class Conta {

public int Numero { get; set; } public double Saldo { get; protected set; } public int Tipo { get; set; } public Cliente Titular { get; set; }

Gostaria de entender onde está o erro para não carregar o nome.

1 resposta
solução!

No método: private void MostraConta() Esta errado: TextoTitular.Text = Convert.ToString(this.conta.Titular); // ESSA LINHA ESTÁ MOSTRANDO A INFORMACAO DO OBJETO CLIENTE. ESSE É O ERRO. Altere para: TextoTitular.Text = Convert.ToString(this.conta.Titular.Nome); // NESSE CASO THIS.CONTA.TITULAR.NOME MOSTRARÁ O ATRIBUTO NOME DO OBJETO CLIENTE CRIADO ("Victor").