// Handles the Drop event for both ListViews. void OnListViewDrop(object sender, DragEventArgs e) { if (e.Effects == DragDropEffects.None) { return; } ViewModel.Menu menuV = e.Data.GetData(typeof(ViewModel.Menu)) as ViewModel.Menu; DataInfos data = e.Data.GetData(typeof(DataInfos)) as DataInfos; if (sender == this.menu) { if (this.dragMgr.IsDragInProgress) { return; } // An item was dragged from the bottom ListView into the top ListView // so remove that item from the bottom ListView. (this.data.ItemsSource as ObservableCollection <DataInfos>).Remove(data); } else { if (this.dragMgr2.IsDragInProgress) { return; } // An item was dragged from the top ListView into the bottom ListView // so remove that item from the top ListView. (this.menu.ItemsSource as ObservableCollection <ViewModel.Menu>).Remove(menuV); } }
private void deleteMenu(object sender, RoutedEventArgs e) { //if (data.SelectedIndex == -1) //{ // return; //} ViewModel.Menu pojo = (ViewModel.Menu)((ContextMenu)((MenuItem)sender).Parent).DataContext; string menuTitle = pojo.menu; int index = 0; foreach (object obj in menu.Items) { string test = ((ViewModel.Menu)obj).menu; if (test == menuTitle) { menu.Items.RemoveAt(index); menu.Items.Refresh(); return; } index++; } }