2010-02-08 76 views
1

我有幾個地方菜單將是一個比顯示對話框更好的選擇,並詢問用戶一個問題。問題是我不知道該怎麼做。彈出菜單進行任何控制?

這裏的情景:

現狀: 我有一個類似按鈕的作用一個圖片框。 用戶點擊此複選框,然後彈出一個對話框,詢問他們選擇一個類別 用戶選擇一個類別,並繼續做他們想要的東西

理想狀況 我有一個類似按鈕的作用一個圖片框。 的用戶點擊框和一個菜單滑出,他們的光標列出的類別 用戶選擇一個類別,繼續做他們想要的東西 或者用戶點擊了其他位置,菜單消失

如何這樣做?有沒有內置的方法來做到這一點?

+0

如果你碰巧使用DevEx,他們有一個彈出控件來做到這一點。 – TheSean 2010-02-08 20:58:33

回答

3

一個ContextMenuStrip可能是你想要什麼:http://msdn.microsoft.com/en-us/library/system.windows.forms.contextmenustrip.aspx

的ContextMenuStrip取代文本菜單。您可以將ContextMenuStrip與任何控件相關聯,並且單擊鼠標右鍵會自動顯示快捷菜單。 您可以使用Show方法以編程方式顯示ContextMenuStrip。 ContextMenuStrip支持取消打開和關閉事件來處理動態填充和多點擊場景。 ContextMenuStrip支持圖像,菜單項檢查狀態,文本,訪問鍵,快捷鍵和級聯菜單。

編輯:粗體談到有關使用Show()方法顯示ContextMenuStrip當以編程方式控制文件的組成部分。

+0

我可以讓它顯示在左邊點擊嗎? – Malfist 2010-02-08 21:02:26

+0

@Malfist:是的,你可以。 – 2010-02-08 21:08:04