Прежде всего вы присвоили Context Menu
элементу управления ListBox
, а не каждому элементу.Итак, вместо этого переместите блок <toolkit:ContextMenuService.ContextMenu>
в StackPanel
.
Есть несколько способов получить элемент, по которому был выполнен щелчок контекстного меню:
В обработчике Click
у вас есть sender
объект (это MenuItem
, я думаю)
Приведите его к MenuItem
и посмотрите на DataContext
этого.Это будет элемент коллекции, который вы добавили в список.Таким образом, вы можете найти индекс по:
int selectedIndex = YourListBoxItemCollection.IndexOf((sender as MenuItem).DataContext)
, где YourListBoxItemCollection
- это то, что вы присваиваете CarsList.ItemsSource