2017-12-11 14 views
1

私はプログラミングが初めてで、問題があります。私は2つのボタンとテキストボックスを持っています。ボタンを押すと、数字がテキストボックスに表示されますが、2番目のボタンを押すと、テキストボックスの数字が上書きされ、テキストボックスに追加されずに置き換えられます。これをどうやって解決するのですか?値をに変更し、の代わりにの代わりにを追加します。ボタンを使用して数値をテキストボックスに追加

public partial class Form1 : Form 
{ 
    int value1 = 0; 
    int value2 = 0; 
    public Form1() 
    { 
     InitializeComponent(); 
    } 

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

    private void button2_Click(object sender, EventArgs e) 
    { 
     value2 += 2; 
     textBox1.Text = value2.ToString(); 
    } 
} 

}

+1

'textBox1.Text =(int.Parse(textBox1.Text)+値2).ToString();' –

答えて

0

あなたはボタンがクリックされた依存し、各ボタンのクリックの結果を格納するために2つの別々の変数(value1と上記value2)を使用しています。

On program start: 
value1 = 0 
value2 = 0 

button1_Clickを実行するユーザークリックボタン1。これは、(value1++経由)をvalue1をインクリメントので、2つの変数は次のようになります。

value1 = 1 
value2 = 0 

ユーザーは、button2_Clickを実行し、ボタン2をクリックします。これは、しかし、値2 + 2で以前にいた何に値2をセットVALUE1の値が変更されないことに注意してください。

value1 = 1 
value2 = 2 

各ボタンのクリックが異なる値で動作している、別の変数を持つことによって。 _Click関数が変更する変数が1つだけvalueになるように、コードを変更します。

+0

これは、値を格納する方法のための代替的なアイデアを与えますテキストボックスのテキストプロパティに値を追加する方法に関する質問には答えません... –

3

あなたは2つの整数を追加し、解析textBox1.Textが整数に

  1. にあなたが持っているバックtextBox1に結果を割り当てる場合:int.Parse(textBox1.Text)
  2. 合計まで値を:int.Parse(textBox1.Text) + value2
  3. に変換して、結果をstringに戻します。(...).ToString()

実装:

private void button2_Click(object sender, EventArgs e) { 
    value2 += 2; 

    textBox1.Text = (int.Parse(textBox1.Text) + value2).ToString(); 
} 
0

この行追加:(

textBox1.Text =(int.parseInt(textBox1.Text)+ VALUE2).toString)を、

値2 + = 2;あなたbutton2_click方法に

関連する問題