ساخت منوی چند ستونه در سی شارپ

فرض کنید که یک منو در برنامه تان به صورت زیر ایجاد کرده اید و می خواهید آن را به صورت دو یا چند ستونه نمایش دهید :

MultiColumnmenu1

کافیست که بر روی فرم دو بار کلیک کرده و کد زیر را در رویداد Load آن بنویسید :

private void Form1_Load(object sender, EventArgs e)
{
	// Create a new drop-down menu.
	ToolStripDropDown menu = new ToolStripDropDown();

	// Copy the existing items.
	ToolStripItem[] items =
	  new ToolStripItem[fileToolStripMenuItem.DropDown.Items.Count];
	fileToolStripMenuItem.DropDown.Items.CopyTo(items, 0);

	// Transfer the items into the drop-down menu.
	foreach (ToolStripItem item in items)
	{
		if (!(item is ToolStripSeparator)) menu.Items.Add(item);
	}

	// Adjust the layout of the new menu.
	menu.LayoutStyle = ToolStripLayoutStyle.Table;
	((TableLayoutSettings)menu.LayoutSettings).ColumnCount = 2;

	// Attach it to the File menu.
	fileToolStripMenuItem.DropDown = menu;
}

حال برنامه را اجرا و نتیجه را مشاهده کنید :
MultiColumnmenu2