Создать панель инструментов для каждой кнопки панели инструментов, расположенной на главной панели инструментов

Что я хочу сделать, это создать панель инструментов, и для каждой ToolStripButton я также хочу создать панель инструментов ниже первой, таким образом, каждая панель инструментов динамически отображается, когда я нажимаю на ToolStripButton.

Я попытался создать основную полосу инструментов с помощью визуального дизайнера студии, а для других, представленных ниже, я попытался использовать класс настройки панели инструментов, но когда я попытался добавить их var cts = new CustomToolStrip(); this.Controls.Add(cts);, они появились выше основной панели инструментов.

вот мой класс CustomToolStrip:

public class CustomToolStrip : ToolStrip
    {
        public ToolStripSec()
        {
            this.GripStyle = ToolStripGripStyle.Hidden;
            this.Padding = new Padding(4, 2, 4, 2);
            this.AutoSize = true;
            this.Dock = DockStyle.Top;
            this.Location = new Point(0, 42);
            var tspr = new ToolStripProfessionalRenderer();
            tspr.RoundedEdges = false;
            this.Renderer = tspr;
        }
    }

Форма:

public partial class MainForm : Form
    {
        public FormAccueil()
        {
            InitializeComponent(); //this method add the first toolstrip (TSMain)
            var r = new ToolStripProfessionalRenderer();
            r.RoundedEdges = false;
            TSMain.Renderer = r;

            var cts = new CustomToolStrip(); 
            this.Controls.Add(cts); // here is the problem
        }
}

Результат:

http://s16.postimg.org/9kgh0xmh1/Capture.png

Обе панели инструментов 1 и 2 имеют свойство dock = top.

Что я могу сделать, чтобы получить toolstrip 2 ниже toolstrip 1??

кто-нибудь может направить меня, пожалуйста...

1 ответ

Решение

Попробуйте установить z-порядок:

this.Controls.Add(cts);
cts.BringToFront();
Другие вопросы по тегам