1
resposta

Duvida atributo conta do Form1

No codigo quando instanciei uma nova conta no Form1_Load usei o this para referenciar ao atributo conta do tipo Conta do Form1. Minha duvida é: Se instancio mais de uma conta no form1_Load, como faco?

public partial class Form1 : Form
{
    private Conta conta;

    public Form1()
    {
        InitializeComponent();
    }

    private void Form1_Load(object sender, EventArgs e)
    {
        this.conta = new Conta();
        this.conta.Titular = "Victor";
        this.conta.Numero = 1;
        this.conta.Deposita(250.0);

        this.MostraConta();
    }

    private void button1_Click(object sender, EventArgs e)
    {
        string textoDoValorDoDeposito = textoValor.Text;
        double valorDeposito = Convert.ToDouble(textoDoValorDoDeposito);
        this.conta.Deposita(valorDeposito);

        this.MostraConta();
    }

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

Hmm não sei se entendi o que você quer mas tem duas soluções:

1 - Voce pode criar mais atributos

private Conta conta1;
private Conta conta2;

2 - Ou você pode criar uma lista de contas:

private IList<Conta> contas = new List<Conta>();
// e preencher como
contas.Add(new Conta(){
Titular = "Victor" ,
Numero = 1
});

contas.Add(new Conta(){
Titular = "Vilson" ,
Numero = 2
});

Não sei em que ponto voce esta do curso, mas poderia interar as listas:

var contaVilson = contas.FirstOrDefault(c=>c.Numero = 2);
contaVilson.Deposita(1000000);