ben ilgili sorunu vardı - Benim ContextMenu için tıklayın olayları için fare pozisyonunu yakalamak istedi. Sorun: menümün ana (bir görüntü denetimi) CommandParameter ElementName tarafından tanınmadı. ,
System.Windows.Data Error: 4 : Cannot find source for binding with reference 'ElementName=imgArena'. BindingExpression:(no path); DataItem=null; target element is 'MenuItem' (Name='mnuAddItem'); target property is 'CommandParameter' (type 'Object')
Görünüşe WPF bağlam menüleri kontrolünüz farklı bir görsel ağaca ait oldukça bağlayıcı hale: ad benim menü ekleme referans için
, aldığım bağlama hatası, önce oldu sinir bozucu.
Bazı araştırma sonra ben arkasında benim kodu için yapıcı yerleştirilen bu basit düzeltme, bulunan: "mnuGrid" Benim bağlam menüsünden adıdır
NameScope.SetNameScope(mnuGrid, NameScope.GetNameScope(this));
.
Bunu yaptıktan sonra, benim kontrolümün tam olarak benim de Beta Vulgaris'in yukarıda yaptığı gibi benim komutuma bir parametre olarak geçebildim. i [bu yazı] doğru yönlendirmek istiyoruz cevapları kabul bilmeyen durumda
<Image Name="imgArena" >
<Image.ContextMenu>
<ContextMenu Name="mnuGrid">
<MenuItem Header="Place _Entry" Name="mnuAddItem"
Command="{Binding AddEntryCmd}"
CommandParameter="{Binding ElementName=imgArena}" />
</ContextMenu>
<Image.ContextMenu>
</Image>
(http://meta.stackexchange.com: Başvuru için
, benim XAML şöyle görünür/sorular/5234 /). –