none
Preenchimento automatico de uma textbox c# visual studio RRS feed

  • Pergunta

  • bom dia, boa tarde ou boa noite pessoal,

    bem, estou com uma duvida e se vcs poderem me ajudar, agradeço!!

    tenho 3 textbox, uma de quantidade(textbox7), valor de venda por kilo(textbox6) e o valor venda total(textbox11)

    quero que assim que entrar com o valor na textbox 7 e na textbox6 o valor da textbox11 ja apareca o resultado, sem clicar na textbox ou apertar entre, espaço.assim como atualizar qdo mudar os resultados.

    A queria tbm impedir que o usuario, nao possa clicar ou ate msm digitar nd na msm(textbox11)! Usei o enabled, mais n adianta, pois o usuario consegue clicar, e digitar. so nao grava pois da erro.

    res = (Convert.ToDouble(textBox7.Text) * Convert.ToDouble(textBox6.Text));
                textBox11.Text = res.ToString("C");

    desde ja agradeço!


    segunda-feira, 4 de julho de 2016 18:40

Respostas

  • Crie um método e chame-o no evento Click e TextChanged do TextBox. Para bloquear o TextBox basta desabilita-lo no Visual Form, ou nó código:  textbox11.Enabled = false;

    Segue a solução:

    namespace Exemplo
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
    
            private void Form1_Load(object sender, EventArgs e)
            {
                textbox11.Enabled = false;
            }
    
            private void textbox7_Click(object sender, EventArgs e)
            {
                metodoVendaTotal();
            }
    
            private void textbox7_TextChanged(object sender, EventArgs e)
            {
                metodoVendaTotal();
            }
    
            private void textbox6_TextChanged(object sender, EventArgs e)
            {
                metodoVendaTotal();
            }
    
            private void textbox6_Click(object sender, EventArgs e)
            {
                metodoVendaTotal();
            }
    
            private void metodoVendaTotal()
            {
                try
                {
                    if (textbox7.Text != "" && textbox6.Text != "")
                    {
                        int total = Convert.ToInt32(textbox7.Text) * Convert.ToInt32(textbox6.Text);
                        textbox11.Text = Convert.ToString(total);
                    } 
                }
                catch (Exception)
                {
                    MessageBox.Show("Só é permitido números inteiros!");
                    textbox7.Text  = "";
                    textbox6.Text  = "";
                    textbox11.Text = "";
                }
            }
        }
    }
    

    Não esqueça de marcar como a resposta!

    segunda-feira, 4 de julho de 2016 22:47

Todas as Respostas

  • Crie um método e chame-o no evento Click e TextChanged do TextBox. Para bloquear o TextBox basta desabilita-lo no Visual Form, ou nó código:  textbox11.Enabled = false;

    Segue a solução:

    namespace Exemplo
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
    
            private void Form1_Load(object sender, EventArgs e)
            {
                textbox11.Enabled = false;
            }
    
            private void textbox7_Click(object sender, EventArgs e)
            {
                metodoVendaTotal();
            }
    
            private void textbox7_TextChanged(object sender, EventArgs e)
            {
                metodoVendaTotal();
            }
    
            private void textbox6_TextChanged(object sender, EventArgs e)
            {
                metodoVendaTotal();
            }
    
            private void textbox6_Click(object sender, EventArgs e)
            {
                metodoVendaTotal();
            }
    
            private void metodoVendaTotal()
            {
                try
                {
                    if (textbox7.Text != "" && textbox6.Text != "")
                    {
                        int total = Convert.ToInt32(textbox7.Text) * Convert.ToInt32(textbox6.Text);
                        textbox11.Text = Convert.ToString(total);
                    } 
                }
                catch (Exception)
                {
                    MessageBox.Show("Só é permitido números inteiros!");
                    textbox7.Text  = "";
                    textbox6.Text  = "";
                    textbox11.Text = "";
                }
            }
        }
    }
    

    Não esqueça de marcar como a resposta!

    segunda-feira, 4 de julho de 2016 22:47
  • perfeito!!!resolveu o que queria, com alguns ajustes ficou perfeito, e me deu uma ideia em outra parte aqui tbm!!

    vlw amigo, um abraço!!!

    terça-feira, 5 de julho de 2016 14:42