Je développe une application WPF en utilisant MVVM et j'ai besoin d'aide.Get DataContext de ListView Ancestor
pour la vue de mes AddressesViewModel J'ai un usercontrol avec un listview. Je voudrais exécuter une commande trouvée dans AddressesViewModel à partir du menu contextuel de listViewItem. Parce que j'ouvre un ContextMenu, il n'est pas trouvé dans l'arborescence visuelle (je l'ai lu quelque part).
Voici le balisage Vue:
<UserControl>
<ListView Name="lstAddress"
ItemsSource="{Binding Path=Addresses}"
HorizontalAlignment="Stretch" MinHeight="150" MinWidth="100">
<ListView.Resources>
<ContextMenu x:Key="ItemContextMenu">
<MenuItem Header="Add Address"/>
</ContextMenu>
</ListView.Resources>
<ListView.View>
<GridView>
<GridViewColumn Header="Address" DisplayMemberBinding="{Binding Path=Address}/>
<GridViewColumn Header="City" DisplayMemberBinding="{Binding Path=City}"/>
</GridView>
</ListView.View>
<ListView.ItemContainerStyle>
<Style TargetType="{x:Type ListViewItem}">
<Setter Property="ContextMenu" Value="{StaticResource ItemContextMenu}"/>
</Style>
</ListView.ItemContainerStyle>
</ListView>
</UserControl>
Voici les classes ViewModel:
public class AddressesViewModel
{
public List<AddressViewModel> Addresses { get; set; }
public ICommand AddAddressCommand { get; set; }
}
public class AddressViewModel
{
public String Address { get; set; }
public String City { get; set; }
public String State { get; set; }
public String Zip { get; set; }
}
Merci à l'avance