带有“静态”变量的C#textbox1_keydown事件

时间:2013-07-26 03:46:22

标签: c#

您好我刚刚为文本框的keydown事件编写了一个方法。这里的问题是:我需要一个变量为“静态”,也就是说,变量的变化可以保留给下一次运行的方法。我试图使用静态,但似乎只有静态方法可以允许这样的声明。

我可以问我该怎么做才能解决问题?非常感谢你!

private  void textBox1_KeyDown(object sender, System.Windows.Forms.KeyEventArgs e)
    {

        if (e.KeyCode != Keys.Enter) return;

        if (comboBox1.SelectedIndex == 0)
        {

            if (textBox1.Text == "00000000")
            {

                typeselected = true;
                type = 0;

            }
            else if (textBox1.Text == "00000001")
            {
                typeselected = true;
                type = 1;

            }
            else if (textBox1.Text == "00000002")
            {
                typeselected = true;
                type = 2;
            }
            else if (textBox1.Text == "00000003")
            {
                typeselected = true;
                type = 3;

            }
            else if (textBox1.Text == "00000004")
            {
                typeselected = true;
                type = 4;

            }
            else if (textBox1.Text == "00000005")
            {
                typeselected = true;
                type = 5;

            }
            else if (textBox1.Text == "00000006")
            {
                typeselected = true;
                type = 6;

            }


            else if (typeselected) { typeselected = excel0(textBox1.Text, type); }
        }

3 个答案:

答案 0 :(得分:1)

您可以使用instance variable

  

一个类的实例变量在新的时候出现   该类的实例已创建,并且在存在时不再存在   没有对该实例的引用和实例的析构函数(如果有的话)   已经执行了。

这样的东西
private int tada = 0;
private void textBox1_KeyDown(object sender, KeyEventArgs e)
{
    tada++;
}

答案 1 :(得分:0)

使静态变量成为类实例变量,而不是方法变量。

答案 2 :(得分:0)

实例方法(没有关键字static)可以引用静态类变量:

class X
{
    static int A;

    public void SetA(int newA)
    {
        A = newA;
    }
}