回答編集履歴
1
MouseUpイベントだけでよかったため修正
answer
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
・通常はMouseDown直後にSelectedIndexChangedが呼ばれるだけ
|
3
3
|
・SelectedIndexChanged中にlistView1.Items.Clear();した場合はマウスから指を離した直後にもSelectedIndexChangedが呼ばれ、選択が解除される(その後MouseDownイベント)
|
4
4
|
|
5
|
-
なので、提案として、MouseDown、MouseUpイベントを使うのはいかがでしょうか。
|
5
|
+
なので、提案として、~~MouseDown~~、MouseUpイベントを使うのはいかがでしょうか。
|
6
6
|
```C#
|
7
7
|
using System;
|
8
8
|
using System.Collections.Generic;
|
@@ -39,11 +39,8 @@
|
|
39
39
|
}
|
40
40
|
}
|
41
41
|
|
42
|
-
private void
|
42
|
+
private void listView1_MouseUp(object sender, MouseEventArgs e) {
|
43
43
|
selectedItem = listView1.GetItemAt(e.X, e.Y);
|
44
|
-
}
|
45
|
-
|
46
|
-
private void listView1_MouseUp(object sender, MouseEventArgs e) {
|
47
44
|
if (selectedItem == null) return;
|
48
45
|
func();
|
49
46
|
}
|