-5

如何获取或引用k我在其中创建的变量button1_Click()

考虑到我不能让它公开或静态。同时,我希望将此变量的值发送到textbox.text

如何才能做到这一点?

    public delegate string fac(int x);
    public static fac intostring = factory;

    public static string factory(int x)
    {
        string inst = x.ToString();
        return inst;
    }

    public class MyClass
    {
        static public string s = intostring(/*here*/);
            public string Text;

        public MyClass(Form Form1)
        {
            var textbox = Form1.Controls.Find("textBox1", true).FirstOrDefault();
            Text = ((TextBox)textbox).Text = (s);
        }
    }
    private void button1_Click(object sender, EventArgs e)
    {
         int k = 1;
        intostring(k);
        MyClass my = new MyClass(this);
    }    
4

1 回答 1

3

首先,kbutton1_Click 中的变量作用域是函数button1_Click,你不能在函数作用域之外获得对它的引用!

然后,该行intostring(k);并没有真正做任何有用的事情,因为您没有使用调用委托的返回结果。

要将 TextBox 的 Text 设置为 k 的值,您只需在此处执行此操作即可:

int k = 1;
var textbox = Form1.Controls.Find("textBox1", true).FirstOrDefault();
((TextBox)textbox).Text = k
于 2013-03-15T21:26:26.903 回答