110,537
社区成员
发帖
与我相关
我的任务
分享
MDIParent mdiFrame = null;
public fomCustomer(MDIParent m)
{
mdiFrame = m;
usCustomerQuery CustomerQuery = new usCustomerQuery(mdiFrame);//注意这里加载了属性mdiframe
CustomerQuery.Parent = this;
CustomerQuery.Dock = DockStyle.Fill;
CustomerQuery.Show();
public MDIParent mdi = null;
public usCustomerQuery(MDIParent m)
{
InitializeComponent();
mdi = m;//这里,我们就可以用Mdi变量引用父窗体的所有函数了
}
private void pbox_Return_Click(object sender, EventArgs e)
{
if (mdi != null)
mdi.NavMenuItem_Click(sender,e);//引用了父窗体中NavMenuItem菜单的处理方法
}
private void pbox_Return_Click(object sender, EventArgs e)
{
MDIParent mdiFrame = this.Parent as MDIParent;
if (mdiFrame != null)
{
mdiFrame.NavMenuItem.Click(sender,e);//这行报错
}
}
private void pbox_Return_Click(object sender, EventArgs e)
{
MDIParent mdiFrame = this.Parent as MDIParent;
if (mdiFrame != null)
{
mdiFrame.NavMenuItem_Click(sender,e);
}
}
ParentForm pf = this.MdiParent as ParentForm ;
if (pf != null)
{
//menuStrip1 是你添加到父窗体的那个菜单的Name值,
Control[] sss = pf.Controls.Find("menuStrip1", true);
MenuStrip ms = sss[0] as MenuStrip;
//文件ToolStripMenuItem 是菜单项的Name值 ,比如我添加的是文件,菜单,它的Name值是"文件ToolStripMenuItem" 这个是自动的
ToolStripMenuItem ts = ms.Items.Find("文件ToolStripMenuItem", true)[0] as ToolStripMenuItem;
ts.PerformClick();
//其实你把文件ToolStripMenuItem定义成public 那直接就可以pf.文件ToolStripMenuItem.PerformClick();
}