可以同步下拉菜单选项的splitbutton

今天做了一个菜单栏,实现了一下类似visual studio中那种可以同步下拉菜单选项的splitbutton功能,效果如下:

    

  代码非常简单,几句话就可以实现。
public static class MenuExtend
{
    public static void SyncToDeault(this ToolStripSplitButton button)
    {
        Action<ToolStripSplitButton, ToolStripItem> synchanlder = (splitButton, item) =>
            {
                splitButton.DefaultItem = item;
                splitButton.Text = item.Text;
                splitButton.ToolTipText = item.ToolTipText;
                splitButton.Image = item.Image;
            };

        synchanlder(button, button.DropDownItems[0]);
        button.DropDownItemClicked += (sender, args) => synchanlder((ToolStripSplitButton)sender, args.ClickedItem);
    }
}

public Form1()
{
    InitializeComponent();

    toolStripSplitButton1.SyncToDeault();
}

原文地址:https://www.cnblogs.com/TianFang/p/1377324.html