2010-10-25 3 views

Répondre

3
Command="{Binding SomeCommand}" 

Il utilisera vos commandes actuelles DataContext qui devrait détenir une propriété de commande « SomeCommand »

PAR EXEMPLE

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> 
    <ContextMenu x:Key="SomeContextMenu"> 
     <MenuItem Header="Test Item" Command="{Binding TestCommand}" /> 
    </ContextMenu> 
</ResourceDictionary> 

Et dans mon ViewModel j'aurais la propriété suivante

public ICommand TestCommand { get; set; } 

Et dans mes View.xaml

<Button ContextMenu="{StaticResource SomeContextMenu}">Test Button</Button> 

Par conséquent, les boutons DataContext est mon ViewModel donc la SomeContextMenu qui est dans un ResourceDictionary dans un fichier externe lie au même DataContext que le bouton, et trouve donc le SomeCommand dans le ViewModel.

Questions connexes