2016-04-06 33 views
1

Şöyle benim WPF XAML tanımlanan bir bağlam menüsü vardır:Controls.ContextMenu bir Forms.ContextMenu dönüştürmek için bir yolu var mı?

o kurulum için çok önemsiz olduğunu ve kullanımı ve görünüyor çünkü çünkü benim tepsi simgesi için bir System.Windows.Forms.NotifyIcon "myIcon" kullanıyorum
<Window.Resources> 
    <ContextMenu x:Key="MyMenu"> 
     <MenuItem Header="{x:Static props:Resources.MenuItem1}"/> 
    </ContextMenu> 
</Window.Resources> 

standart MSFT WPF eşdeğeri olmamalıdır. Ben

this.myIcon.ContextMenu = (ContextMenu)this.Resources["MyMenu"]; 

çağırdığınızda Açıkçası aynı ContextMenu sınıf değiliz verdiğinden maalesef bir döküm istisna olsun. Controls.ContextMenu'dan Forms.ContextMenu'a dönüştürmenin bir yolu var mı?

XAML'mde tanımlanan bağlam menüsünü el ile getirerek bildirim simgesinin sağ fare tıklatma olayını işlememeyi tercih ederim. Kullanıcının, klavyedeki bağlam menüsü tuşunu kullandığında sağ tıklama fare olayının gönderilmediğinden şüpheleniyorum.

cevap

2

Hayır - kontroller tamamen farklı platformlar içindir (Winforms vs WPF). İkisi arasında "dönüşüm" yoktur.

WPF'yi destekleyen veya WPF içerik menüsünün öğelerini çeviren ve bunları Winforms bağlam menüsüne ekleyen bir "dönüştürme" yazan a different version of NotifyIcon kullanın.

1

Bu yüzden, herkes merak ediyor. Bir dönüştürücü uygulamaya başladım.

İlgili konular