日期:2014-05-17  浏览次数:20865 次

c#能否主动调用事件?
private void label3_Click(object sender, EventArgs e)
        {
            Form_pos form3=new Form_pos();
            ShowInTaskbar = false;
            Hide();
            form3.ShowDialog();
            Close();
        }

        private void Form_select_KeyPress(object sender, KeyPressEventArgs e)
        {
            char key = e.KeyChar;
            switch (key) {
                case (char)Keys.D1: label3.Click(); break; //这里能否直接主动去触发事件?
            }
        }


求指教。。。
C#

------解决方案--------------------
事件触发后也是调用一个函数,你这里为什么不直接就调用这个函数呢??

例如,你lable3点击调用的是label3_Click(object sender,EventArg e),你就可以直接调用它:
case (char)Keys.D1: label3_Click(label3,new EventArg()); break;
------解决方案--------------------
label3.Click(null,null);
蛇年马月狗日龙时
------解决方案--------------------

楼上几位好好笑



 private void Form_select_KeyPress(object sender, KeyPressEventArgs e)
        {
            char key = e.KeyChar;
            switch (key) {
                case (char)Keys.D1: label3_Click(null,null); break;            
                }
        }