karper1.2 0 Denunciar post Postado Novembro 4, 2010 Boa tarde Galera. É o seguinte. Preciso fazer uma soma automatica dos valores de alguns textbox, ou seja, digito o valor em um e já se faz a soma com os outros, como se faz com o auto soma do excel. Tem jeito e o que usar? Seria para fazer o mesmo que o botão soma deste exemplo using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms; namespace calculadora { public partial class Calculadora : Form { public Calculadora() { InitializeComponent(); } //Primeiro Preço float Preco; float Valor1; float Valor2; float Valor3; float Valor4; float Valor5; float Valor6; float Valor7; float CustoTotal; float Lucro; //Segundo Preço float Preco2; float Valor01; float Valor02; float Valor03; float Valor04; float Valor05; float Valor06; float Valor07; float CustoTotal2; float Lucro2; private void btSoma_Click(object sender, EventArgs e) { //Calculo1 Preco = float.Parse(tbPreco.Text); Valor1 = float.Parse(tbValor1.Text); Valor2 = float.Parse(tbValor2.Text); Valor3 = float.Parse(tbValor3.Text); Valor4 = float.Parse(tbValor4.Text); Valor5 = float.Parse(tbValor5.Text); Valor6 = float.Parse(tbValor6.Text); Valor7 = float.Parse(tbValor7.Text); CustoTotal = Valor1 + Valor2 + Valor3 + Valor4 + Valor5 + Valor6 + Valor7; tbCustoTotal.Text = CustoTotal.ToString(); Lucro = Preco - CustoTotal; tbLucro.Text = Lucro.ToString(); //Calculo2 Preco2 = float.Parse(tbPreco2.Text); Valor01 = float.Parse(tbValor01.Text); Valor02 = float.Parse(tbValor02.Text); Valor03 = float.Parse(tbValor03.Text); Valor04 = float.Parse(tbValor04.Text); Valor05 = float.Parse(tbValor05.Text); Valor06 = float.Parse(tbValor06.Text); Valor07 = float.Parse(tbValor07.Text); CustoTotal2 = Valor01 + Valor02 + Valor03 + Valor04 + Valor05 + Valor06 + Valor07; tbCustoTotal2.Text = CustoTotal2.ToString(); Lucro2 = Preco2 - CustoTotal2; tbLucro2.Text = Lucro2.ToString(); } private void btLimpar_Click(object sender, EventArgs e) { foreach (Control c in this.Controls) { if (c is TextBox) c.Text = ""; } } } } Desde já obrigado.. Compartilhar este post Link para o post Compartilhar em outros sites
quintelab 91 Denunciar post Postado Novembro 5, 2010 O TextBox tem vários eventos que correpondem a saída do campo, ou a mudança do valor digitado. Utilize o evento que melhor se encaixa no seu cenário e coloque seu código de faz o calculo. Abraços... Compartilhar este post Link para o post Compartilhar em outros sites
DaniloBSi 0 Denunciar post Postado Novembro 10, 2010 Olá amigo, Creio que o melhor evento para isto seria o "OnTextChanged". Dentro da chamada do evento, adicione a chamada do método "btSoma_Click", conforme indicado abaixo: protected void tbLucro_TextChanged(object sender, EventArgs e) { btSoma_Click(sender, e); } Obs: Não se esqueça de habilitar a propriedade do textbox "AutoPostBack" para "true"; Compartilhar este post Link para o post Compartilhar em outros sites