private void MaterialSiteListBox_MouseDoubleClick(object sender, MouseButtonEventArgs e) { // 選択中のアイテムの ListBoxItem を取得 var SelectedListBoxItem = (ListBoxItem)MaterialSiteListBox.ItemContainerGenerator.ContainerFromItem(MaterialSiteListBox.SelectedItem); // アイテム上でダブルクリックされた場合 if (SelectedListBoxItem?.InputHitTest(e.GetPosition(SelectedListBoxItem)) != null) { Window win = new EditingAMaterialSite((string)SelectedListBoxItem.Content); win.Owner = GetWindow(this); win.ShowDialog(); UpdateMaterialSiteListBox(); } }
private void ClickedEditingAMaterialSite(object sender, RoutedEventArgs e) { //何の項目も選択されていない場合 if (MaterialSiteListBox.SelectedIndex == -1) { MessageBox.Show("編集したい項目を選択してください。", "項目の未選択", MessageBoxButton.OK, MessageBoxImage.Exclamation); return; } var SelectedListBoxItem = (ListBoxItem)MaterialSiteListBox.ItemContainerGenerator.ContainerFromItem(MaterialSiteListBox.SelectedItem); Window win = new EditingAMaterialSite((string)SelectedListBoxItem.Content); win.Owner = GetWindow(this); win.ShowDialog(); UpdateMaterialSiteListBox(); }