在这个例子中我们选择RadioButtons时,有人能解释一下编译器如何知道执行适当的方法吗?
答案 0 :(得分:1)
很难确定你在问什么。我想你问的是,当点击其中一个图标单选按钮时,系统知道它应该如何执行iconType_CheckChanged
方法,以及它如何知道,例如{{} 1}}改变了。
答案分为两部分。首先,在Windows窗体中创建程序时,您为每个单选按钮连接了CheckChanged事件处理程序。因此asteriskRadioButton
CheckChanged方法包含值asteriskRadioButton
。该信息将添加到您通常不会看到的部分类中。它位于iconType_CheckChanged
方法的Form.Designer.cs文件中。它看起来像:
InitializeComponent
您通常不会看到Form.Designer.cs文件。要查看它,请展开Visual Studio Solution Explorer中的表单节点,您将看到列出的文件:
答案的第二部分是,当您单击单选按钮时(或当某些代码更改单选按钮的状态时),基础控制机制调用this.asteriskRadioButton.CheckChanged += iconType_CheckChanged
,将引用传递给触发的控件iconType_CheckChanged
参数中的事件。