C#每次按下按钮时循环递增

时间:2015-11-26 01:51:22

标签: c# visual-c#-express-2010

在发布之前我搜索了一些东西,但我找不到这样的东西。基本上,我想从文本框中获取文本,保存为变量(比如history1),然后能够在将来调用它来显示文本。我可以这样做,但我坚持的是我想要3个变量(例如history1,history2和history3),每次按下按钮时,字符串都会移动到下一个变量。

例如,按下按钮,文本将保存为变量history1。文本被更改并再次按下按钮,history1中的文本被移动到变量history2,新文本被保存为history1。这只需要工作3个实例,但不是无限的,所以当文本存储在history3中并按下按钮时,文本就会被覆盖。

我想到接近这个的方式是:

string history1;
string history2;
string history3;

        for (int i = 1; i < 4; i++)
        {
            history1 = txtOutput.Text;
            btnToFile_Click()
            {
                history2=history1;
                btnToFile_Click()
                {
                  history3=history2;
                }

            }
        }

然而,这不会起作用,因为btnToFile_Click不会采取任何争论。是否有更简单的方法可以解决这个问题,或者只是一种方法来修复不采用争论的方法?

提前致谢!

4 个答案:

答案 0 :(得分:5)

确保您在表单级别(不在任何方法内)对del history1history2history3进行了详细说明。

然后,在按钮的click事件的处理程序中包含以下代码:

history3 = history2;
history2 = history1;
history1 = txtOutput.Text;

答案 1 :(得分:3)

您不需要在循环中多次调用btnToFile_Click()方法,只需按相反顺序将文本从结束文本框移动到另一个文本框即可。你也不需要循环,因为你只有三个文本框。

为什么要逆序?因此,在将新值覆盖之前,将值移动到下一个文本框。

所以:

history3 = history2;
history2 = history1;
history1 = txtOutput.Text;

答案 2 :(得分:1)

您可以尝试保存字符串数组,并在调用按钮单击事件时移动其中的字符串

答案 3 :(得分:0)

btnToFile_Click()是btnToFile(一个按钮)的Click事件处理程序。您不应该自己调用该方法,它由UI框架调用(比如WPF或WinForms等)。顺便说一下,它确实接收一个参数,然后是事件源(因为你可以为多个按钮分配相同的事件处理程序,并根据发送事件的那个做一些事情)