2011-03-08 98 views
3

我在我的DevExpress界面上有一些GridControl控件。當我右擊網格的某一行時,我想彈出相同類型的菜單,例如當我右擊我的桌面(贏得7)時,但只有3個選項 - 剪切,粘貼和複製。如何在GridControl行上右鍵單擊彈出菜單?

如何做到這一點?有沒有辦法在GridControl的屬性編輯器中說:「如果右鍵單擊,然後彈出菜單,則對於每一行。如果是這樣,這個菜單是否存儲在一個倉庫中,這個菜單是什麼類型?

回答

1

處理GridView的ShowGridMenu事件以在單擊gridRow時顯示上下文菜單。我們還發表文章,這個事件如何被使用的例子:

How to show a context menu for grid rows

+0

方法ShowGridMenu被標記爲「Obsolete」。他們說:「你應該使用'[PopupMenuShowing]'(http://documentation.devexpress.com/#windowsforms/DevExpressXtraSchedulerSchedulerControl_PopupMenuShowingtopic)'」。 – Chrigl 2013-11-27 15:03:44

1
  1. 添加DevXpress.ExtraBars.BarManager控制。
  2. 添加一個DevXpress.ExtraBars.PopupMenu控件。
  3. 在PopupMenu控件中創建您的菜單結構。
  4. 這段代碼添加到你的GridView的 'PopupMenuShowing' 事件:

    private void gridView1_PopupMenuShowing(object sender, DevExpress.XtraGrid.Views.Grid.PopupMenuShowingEventArgs e) 
    { 
        if (e.HitInfo.InRow) 
        { 
         System.Drawing.Point p2 = Control.MousePosition; 
         this.popupMenu1.ShowPopup(p2); 
        } 
    } 
    

這就是它!

相關問題