在发射一个函数时,如果这个函数包含了对当前窗体的 Form.Close(),那么很可能在 Application.Run 处报错。
引发这个原因,我在反汇编跟踪时,最终发现了问题点。原函数如下:
private void navBarControl1_DoubleClick(object sender, EventArgs e)
{
if (navBarControl1.PressedLink != null)
{
string itemname = navBarControl1.PressedLink.ItemName;
this._dynamicHelper.Methods.Invoke(itemname + "_DoubleClicked", DynamicHelperBase.InstanceBindingFlags);
}
}
{
if (navBarControl1.PressedLink != null)
{
string itemname = navBarControl1.PressedLink.ItemName;
this._dynamicHelper.Methods.Invoke(itemname + "_DoubleClicked", DynamicHelperBase.InstanceBindingFlags);
}
}