Sto tentando di associare il comando MenuItem al comando contenuto in UserControl.DataContext
. Ho trovato qualche domanda simile, ma la soluzione secondo loro non riesce a me:Associazione a DataContext padre all'interno di DataTemplate
<UserControl ...>
<UserControl.Resources>
<DataTemplate x:Key="TileItemStye">
<Grid Width="100" Height="100">
<Grid.ContextMenu>
<ContextMenu>
<MenuItem Header="Remove"
Command="{Binding DataContext.RemoveItem,
RelativeSource={RelativeSource FindAncestor,
AncestorType=UserControl}}">
</MenuItem>
</ContextMenu>
</Grid.ContextMenu>
</Grid>
</DataTemplate>
</UserControl.Resources>
<Grid>
<ListView ItemsSource="{Binding Path=Files}"
ItemTemplate="{DynamicResource TileItemStye}" >
<ListView.ItemsPanel>
<ItemsPanelTemplate>
<WrapPanel />
</ItemsPanelTemplate>
</ListView.ItemsPanel>
</ListView>
</Grid>
DataContext di UserControl è ViewModel con ICommand
RemoveItem e ObservableCollection<FileViewModel>
file.
che cosa è "non riuscire" a voi? - Per favore spiega l'errore che ottieni .... – Carsten
Il comando non è vincolato ... Non ho alcun errore, solo il gestore che è legato al comando non viene mai chiamato – bkovacic
Penso che il Datacontext dovrebbe semplicemente "piovere" sul tuo modello, hai provato Command = "{Binding Path = RemoveItem}"? – hyp