private void AddonsListBox_MouseDoubleClick(object sender, MouseButtonEventArgs e) { lastSelectedMod = ModsListBox.SelectedIndex; try { MODS_CLASS AddonEntry = ModsListBox.SelectedItem as MODS_CLASS; if (AddonEntry == null) { return; } if (AddonEntry == null) { return; } if (AddonEntry.isChecked) { AddonEntry.isChecked = false; } else { AddonEntry.isChecked = true; } ModsListBox.SelectedItem = AddonEntry; CollectionViewSource.GetDefaultView(ModsListBox.DataContext).Refresh(); ModsListBox.SelectedIndex = lastSelectedMod; } catch (Exception ex) { var dialog = new ErrorPrompt(ex.Message); dialog.ShowDialog(); } }
private void AddonsListBox_KeyUp(object sender, KeyEventArgs e) { if (e.Key == Key.Space) { lastSelectedMod = ModsListBox.SelectedIndex; MODS_CLASS AddonEntry = ModsListBox.SelectedItem as MODS_CLASS; if (AddonEntry.isChecked) { AddonEntry.isChecked = false; } else { AddonEntry.isChecked = true; } ModsListBox.SelectedItem = AddonEntry; CollectionViewSource.GetDefaultView(ModsListBox.DataContext).Refresh(); ModsListBox.SelectedIndex = lastSelectedMod; e.Handled = true; } }