我有一个问题,预定义事件是如何工作的,如按钮点击,表单加载等。当我们点击按钮或表单加载时编译器发送消息到表单类或按钮类?我搜索了有关此问题的网站数量但我没有得到答案。这些网站只显示如何创建活动以及如何订阅它。我想知道。如果有人知道这一点,请与我分享。
答案 0 :(得分:1)
Windows发送某个Windows消息时会触发这些事件。 WndPrc方法捕获此消息,这最终将导致WinForms实现启动相应的事件。 (这实际上是Windows API的包装器)
例如,您还可以查看WinForms Button类的source code,并查看OnClick
事件的引发时间。在WndProc方法中,如果设置了WParam
中高位的特定值的某个窗口消息(WM_COMMAND),则可以看到OnClick事件被引发。