2016-08-05 39 views
0

我正在學習wpf技術。我建立了一個這樣的自定義類,它應該在鼠標彈起事件作出反應(應顯示彈出菜單)如何在自定義類中顯示ContextMenu?

public class CustomControl : UIElement 
{ 
    protected override void OnMouseUp(MouseButtonEventArgs args)  
    { 
     ContextMenu context_menu = new ContextMenu(); 
     // How to show context_menu at specific point? 
    } 
}; 

我不知道如何在speficic位置顯示創建的上下文菜單。它沒有指定Show方法。 (我不想創建源代碼和設計之間的依賴關係)

回答

1

使用WPF你通常會設計在XAML上下文菜單,我不使用XAML:的UIElement不挪用ContextMenu屬性

編輯。例如,如何做到這一點的簡要教程是this

基本上,您可以在相應的控件中編寫上下文菜單,並使用Command或鼠標事件(如Click)分配特定行爲。

+0

謝謝,該教程幫助我(我認爲IsOpen屬性只能通過get方法訪問) – LmTinyToon

+1

@АлександрЛысенко可以通過用戶交互進行更改的控件的大多數屬性都可以在WPF中設置。雖然您可以在不碰XAML的情況下實現所有功能,但使用它通常要容易得多。 – Adwaenyth

相關問題