c# - 在多个表单之间共享一个 MenuStrip 并分别“打开、保存、另存为”每个表单
问题描述
我可以使用 1 个 MenuStrip 在面板“PanelSlider_Utils”中显示多个表单,如下所示:
public Utils()
{
InitializeComponent();
PanelSlider_Utils.Controls.Add(new Job1());
PanelSlider_Utils.Controls.Add(new Job2());
PanelSlider_Utils.Controls.Add(new Job3());
}
并调用函数
private void DefinirJob1ToolStripMenuItem_Click(object sender, EventArgs e)
{
PanelSlider_Utils.Controls.Find("Job1", false)[0].BringToFront();
}
private void DefinirJob2ToolStripMenuItem_Click(object sender, EventArgs e)
{
PanelSlider_Utils.Controls.Find("Job2", false)[0].BringToFront();
}
private void DefinirJob3ToolStripMenuItem_Click(object sender, EventArgs e)
{
PanelSlider_Utils.Controls.Find("Job3", false)[0].BringToFront();
}
如何使用相同的 MenuStrip 为每个表单打开、保存、另存为文件?
我一直在尝试和搜索 2 天...请帮助!
解决方案
UserControl 的解决方案是:
public void newToolStripMenuItem_Click(object sender, EventArgs e)
{
foo obj = this.Controls.Find("MYFORM", true)[0] as foo;
if (obj != null)
obj.new_method();
}
我在 MYFORM 中这样调用 new_method:
public void new_method()
{
...my code...
}
推荐阅读
- scala - 从 Chill 0.6.0 (Kryo 2.21) 迁移到 0.9.5 (Kryo 4.0.2) 并反序列化旧消息
- javascript - 如何从在 {} 中包含数据的 API 获取数据?
- office365 - Power Apps 中下拉列表的限制
- python - 我需要在 jython 上使用 ctypes 的帮助
- javascript - 记忆或不记忆 React 组件的常用方法是什么?
- laravel - 如何连接控制器雄辩的
- excel - 如何使用 VBA 在带有 data-automation-id 标签的 IE 上登录网站?
- react-native - 无法从 `node_modules\socket.io-client\build\manager.js` 解析模块 `component-bind`:在项目中找不到组件绑定
- elasticsearch - 是否可以在没有在 magento 2.3 中配置 Elasticsearch 的情况下实现停用词 + 如何在 magento 2.3 中实现停用词
- c++ - mex 编译需要英特尔 MKL 作为线性代数包的 C++ 源文件的默认推荐编译器是什么?