vs2008中的action
有一个Main窗体,一个A用户控件,和B用户控件,将AB在Main的Load事件中加载,以显示到Main中,如下:
private void Main_Load(object sender, EventArgs e)
{
A u1 = new A();
B u2 = new B();
panel1.Controls.Add(u1);
panel2.Controls.Add(u2);
}
A中有一个按钮btn,B中有一个文本框。点击A中的btn,用提示框的形式弹出B中文本框的值。
定义了一个类C,声明Action变量:public Action<string> GetInfo { get; set; }
A的btn的点击事件:
c.GetInfo = (str) => { MessageBox.Show("获得信息:" + str); };
B的文本框值的改变事件中:
c.GetInfo(textBox1.Text);
然后我运行,报错,未实例化。请问大家我该怎么弄。谢谢。
------解决方案--------------------
C# code
C c = new C();
c.GetInfo = (str) => { MessageBox.Show(str); };
c.GetInfo(null);