首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

Windows Forms 選單設計完全指南 (7):新增彈出式選單

     編輯:關於C語言

4.3 新增彈出式選單

在 .NET 中,System.Windows.Forms.Control 類別是除選單外所有視窗控制項與視覺化元素的基類。該類別包含一個 ContextMenu 型別的 ContextMenu 屬性,透過設定此屬性即可為控制項或表單新增右鍵彈出式選單。操作非常直觀:只需建立一個 ContextMenu 物件,並指派給表單或控制項的 ContextMenu 屬性即可。

ContextMenu 兩種建構函式的使用方式

ContextMenu 類別提供兩個建構函式,使用方式與 MainMenu 類似,可透過下列兩種方法為控制項或表單新增彈出式選單。

方法一:先建立空選單,再透過 MenuItems 集合管理項目

ContextMenu menu1 = new ContextMenu();

menu1.MenuItems.Add(new MenuItem("彈出選單一"));
menu1.MenuItems.Add(new MenuItem("彈出選單二"));

// 為表單與按鈕指派相同的彈出選單
this.ContextMenu = menu1;
button1.ContextMenu = menu1;

方法二:使用 ContextMenu(MenuItem[]) 建構函式直接建立含項目陣列的選單

MenuItem menu1 = new MenuItem("彈出選單一");
MenuItem menu2 = new MenuItem("彈出選單二");
MenuItem menu3 = new MenuItem("-");        // 選單分隔線
MenuItem menu4 = new MenuItem("彈出選單三");

// 為目前表單新增彈出式選單
this.ContextMenu = new ContextMenu(new MenuItem[] { menu1, menu2, menu3, menu4 });

進階屬性與方法

  • RightToLeft:設定選單項目由右向左排列(符合特定語言習慣)。
  • SourceControl:取得顯示彈出選單的對應控制項。
  • Show() 方法:強制以程式碼顯示彈出式選單。

存取彈出選單具體項目

與主選單類似,可直接透過 Menu.MenuItemCollection 集合存取彈出選單項目:

// 兩種存取方式效果相同
menu1.MenuItems[0].Text = "Test";
// 或
this.ContextMenu.MenuItems[0].Text = "Test";

因為物件為參考型別,兩種方式實質操作的是同一個選單物件。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved