InitializeComponent()对FrmAttributeTable_Load的执行与否的影响。
FrmAttributeTable form = new FrmAttributeTable(axMapControl1);
form.ShowDialog();
窗体加载时FrmAttributeTable的Load事件不执行,半天没发现为什么,原来原因在这:
通过VS2012自动重载的窗体FrmAttributeTable的构造函数如下
public FrmAttributeTable(AxMapControl axMapControl1)
{
// TODO: Complete member initialization
this.axMapControl = axMapControl1;
}
该构造函数中没有InitializeComponent(),窗体加载时FrmAttributeTable的Load事件不执行。
窗体load事件的定义 this.Load += new System.EventHandler(this.FrmAttributeTable_Load); 在InitializeComponent()函数中,
没有InitializeComponent()进行窗体初始化,就没有load事件的定义,自然不会执行load事件。
将构造函数修改为
public FrmAttributeTable(AxMapControl axMapControl1)
{
// TODO: Complete member initialization
InitializeComponent();
this.axMapControl = axMapControl1;
}
,添加
InitializeComponent();就木有问题了。