每次按下按钮时循环的C#增量

本文关键字:循环 增量 按钮 | 更新日期: 2023-09-27 18:24:32

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

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

我想到的方法是:

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不接受任何争论。有没有一种更简单的方法可以做到这一点,或者只是一种不考虑争论的方法?

提前感谢!

每次按下按钮时循环的C#增量

确保在表单级别(而不是在任何方法内部)delcare history1history2history3

然后,在按钮的点击事件的处理程序中有以下代码:

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

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

为什么要颠倒顺序?因此,在被新值覆盖之前,您将该值移动到下一个文本框。

因此:

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

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

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