c# - 合并MDI工具栏

标签 c# .net vb.net winforms mdi

在.net MDI应用程序中,子窗体的菜单自动合并到父窗体的菜单中。 有没有办法对工具栏做类似的事情。这个概念是将事件子工具栏发送到父工具栏条纹。

我找到了http://community.devexpress.com/forums/p/5696/24663.aspx但未能实现。

最佳答案

按照下面的方法就可以完成。 更多详细信息可以在 this blog 中找到。 。两种形式都应该有一个工具条。

       //In Parent form
        protected override void OnMdiChildActivate(EventArgs e)
        {
            base.OnMdiChildActivate(e); //REQUIRED
            HandleChildMerge(); //Handle merging
        }


        private void HandleChildMerge()
        {
            ToolStripManager.RevertMerge(tsParent);
            IChildForm ChildForm = ActiveMdiChild as IChildForm;
            if (ChildForm != null)
            {
                ToolStripManager.Merge(ChildForm.ChildToolStrip, tsParent);
            }
        }

   public partial class frmChild : Form, IChildForm
   {...}
   interface IChildForm
    {
        ToolStrip ChildToolStrip { get; set; }
    }

关于c# - 合并MDI工具栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3350074/

相关文章:

c# - EntityFramework 6 和 mongodb 和 Identity

c# - 在 LINQ 中将 2 个 xml 合并为一个新 XML 的有效方法

c# - 如何将文本框值添加到 Access 数据库?

VB.Net 隐藏标签页

mysql - (提供程序 : Named Pipes Provider, 错误:40 - 无法打开与 SQL Server 的连接)

c# - 通过C#将XPath作为参数传递给XSLT,

c# - 背景 worker 。如何通过在 TreeView 中导航来显示当前进程?

c# - System.Threading.Timer 不连续

.net - .NET 中的嵌套事务

.net - 为什么 .NET Core (dnxcore50) xUnit 测试在 VS2015 测试资源管理器中不可见?