我正在尝试对点击单选按钮控件作出反应。在运行时,EventArgs变量显示MouseEventArgs类型的元素,该元素具有EventArgs类型的基类,如此图所示。
红色箭头显示我将EventArgs作为MouseEventArgs转换为允许编译的位置,因为没有强制转换,唯一可用的方法是equals,getHashCode,getType和ToString。请注意,我手动创建此控件 - 而不是在设计器中。
但是,如果我让它继续,我会收到以下错误。
我理解错误,但由于'EventArgs'没有可访问的Clicks方法,我无法弄清楚如何编译它。
感谢您提供任何帮助。
答案 0 :(得分:1)
您只需要指定类型为MouseEventArgs
的事件处理程序的第二个参数。像这样:
private static void AutoMan_RadBut_Click(object sender, MouseEventArgs e)
这样,您就不必在方法中强制转换参数。
答案 1 :(得分:0)
感谢大家的回复。
最终解决方案使用了Adam的部分回答。我需要将EventArgs更改为MouseEventArgs,但这会导致错误。整个解决方案包括改变
new EventHandler(AutoMan_RadBut_Click);
到
new MouseEventHandler(AutoMan_RadBut_Click)
感谢亚当让我走上了正确的道路。
P.S。我仍然不知道为什么'e'在运行时有一个MouseEventArgs子类,但我无法在编译时访问它。