我有几个子窗体,但他们有一个共同的方法,get_CurrentClamp()
。我想从MDI父级调用当前活动mdichild的方法。我如何从mdi父c调用子窗体的方法#
这是一个菜单项中的MdiParent形式onclick事件MDIMain.cs应该调用该方法。
....
private void mnugetCToolStripMenuItem_Click(object sender, EventArgs e)
{
if (MdiChildren.Any())
{
Form f = this.ActiveMdiChild;
f.get_CurrentClamp(varCurrentThreshhold);
}
}
.....
在子窗体frmDashboard.cs
public void get_CurrentClamp(float curThreshhold=5.5)
{
...
}
,但我不断收到错误,任何地方我的问题呢?任何帮助将不胜感激!
该错误的越来越是这样
错误3“System.Windows.Forms.Form中”不包含 “get_CurrentClamp”的定义和没有扩展方法“get_CurrentClamp” 接受的第一个参数类型“System.Windows.Forms.Form中”可能 找到(是否缺少using指令或程序集引用?)
那是错误上午的MdiParent形式获得。
什么是错误? – 2014-12-04 06:40:14
你没有找到get_CurrentClamp? – 2014-12-04 06:42:15
您正在转换为标准的Form类型,这当然没有名为get_CurrentClamp()的方法。您可以使用Reflection来获取方法并调用它。更好的解决方案是让所有的子表单都实现一个包含该方法的**接口**;那么你可以投到界面并调用方法... – 2014-12-04 07:05:11