2010-12-03 19 views
0

Salut, je voudrais créer cette liaison. J'ai un menu, quelque chose comme ça.WPF - Est-il possible de créer cette liaison?

<Menu IsMainMenu="True" Grid.Column="0" Grid.Row="0"> 
    <MenuItem Header="_MyMenu"> 
     <MenuItem Header="_Status"> 
     <MenuItem Name="Online" Header="Online" Click="StatusMenuItem_Click"> 
      <MenuItem.Icon> 
       <Image Source="images\icons\menu\online.ico" Height="20"/> 
      </MenuItem.Icon> 
     </MenuItem> 
     </MenuItem> 
    </MenuItem> 
</Menu> 

Je voudrais créer lier avec nom d'élément de menu pour propriété de chaîne d'objet, et comme je voudrais UpdateSourceTriger un clic d'événement sur élément de menu.

+0

L'avez-vous essayé et cela n'a-t-il pas fonctionné? –

+0

Je doute de liaison le nom fonctionnerait comme c'est le nom de l'objet, vous pouvez lier l'en-tête si vous le souhaitez. également, lier la source de l'image. – Machinarius

+0

Mais j'ai besoin d'une propriété de mise à jour uniquement lorsque MENU ITEM EST CLIQUÉ. –

Répondre

0

Vous pouvez facilement résoudre cela en utilisant un cadre comme Caliburn.Micro!

0

Quel est le point de mise à jour de la source? MenuItems ne fournit aucun moyen de laisser l'utilisateur modifier son en-tête. Ainsi, même si vous forcez Binding à mettre à jour la source, votre objet recevra la même valeur que celle qu'il contient déjà. Si vous souhaitez notifier l'objet que vous avez cliqué sur MenuItem, vous feriez mieux d'utiliser Commands (l'article décrit Silverlight, mais c'est aussi vrai pour WPF)