我有一个带有menustrip和tabcontrol的form1,它在tabpage1中打开了form2。当我单击ToolStripMenuItem时,我想从form2运行一个公共函数。 使用以下代码打开form2:
form2 sar = new form2(usrnm);
sar.TopLevel = false;
sar.WindowState = FormWindowState.Maximized;
sar.FormBorderStyle = FormBorderStyle.None;
TabPage tb = new TabPage();
tb.Controls.Add(sar);
sar.Parent = tb;
tabControl1.TabPages.Add(tb);
sar.Show();
tabControl1.SelectTab(tb);
tabControl1.SelectedTab.Text = "Oncor Daily";
我在form2中有一个public void savenewform()
函数,我想运行它。我不知道该怎么办。
答案 0 :(得分:0)
在Form1上的某个地方存储对“ sar”的引用,然后您的ToolStripMenuItem可以检查“ somewhere”是否为非空,然后将其用作对表单的引用。由于引用的类型为“ form2”,因此可以使用您的公共功能。
如果您想对其他表单类型使用此技巧,则可能需要为它们创建一个接口,以便可以将它们视为“ iDavesSubForm”而不是“ Form2”。