CaptainTeancum
CaptainTeancum

Reputation: 47

button push increment number to a text box c# winform

This is for a project I'm doing for class, I'm trying to create a win form that will have 2 buttons one that will increment in the text box when the button is pushed and one that will decrement when a different button is pushed. I'm having trouble finding the right line that will do what I want. Is there someone that could help me out?

 using System;
    using System.Collections.Generic;
    using System.ComponentModel;
    using System.Data;
    using System.Drawing;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using System.Windows.Forms;

    namespace Project10TC
    {
        public partial class Form1 : Form


        {
            public Form1()
            {
                InitializeComponent();
            }

            private void exitToolStripMenuItem1_Click(object sender, EventArgs e)
            {
                this.Close();
            }

            private void aboutToolStripMenuItem_Click(object sender, EventArgs e)
            {
                MessageBox.Show("Teancum Project 10");
            }

            private void button1_Click(object sender, EventArgs e)
            {
                 int i = 1;

                textBox1.Text = Convert.ToString(i++);
            }

            private void button2_Click(object sender, EventArgs e)
            {
                 int i = 1;

                textBox1.Text = Convert.ToString(i--);
            }

            private void button3_Click(object sender, EventArgs e)
            {
                textBox1.Clear();
            }

            private void textBox1_TextChanged(object sender, EventArgs e)
            {

            }
        }
    }

Upvotes: 0

Views: 5791

Answers (2)

horgh
horgh

Reputation: 18534

Declare the i variable as a field. Besides I would use ++i instead of i++. Otherwise you have different values in the textbox and in the variable. Also, no need to use Convert.ToString().

public partial class Form1 : Form
{
    int i;

    public Form1()
    {
        InitializeComponent();
        i = 0;
    }

    //...

    private void button1_Click(object sender, EventArgs e)
    {
        textBox1.Text = (++i).ToString();
    }

    private void button2_Click(object sender, EventArgs e)
    {
        textBox1.Text = (--i).ToString;
    }
}

Upvotes: 0

Habib
Habib

Reputation: 223217

Since its a class project, I can only give you a hint.

You need to define the variable i outside of your button click events. Use the same variable in both events.

Also look at the difference between i++ and ++i

Upvotes: 4

Related Questions