如果我把一個列表視圖組件到Windows窗體中添加婁代碼到它的SelectedIndexChanged
事件:C#的bizzare多個事件觸發的列表視圖上的SelectedIndexChanged
MessageBox.Show("Fired!");
foreach (int selectedIndex in listView1.SelectedIndices)
{
listView1.Items[selectedIndex].Selected = false;
listView1.Items[selectedIndex].Focused = false;
}
消息框將顯示4倍!這是爲什麼?
注意:我用的是循環以清除列表視圖
每次更改選擇時,都會觸發SelectedIndexChanged事件。所以你需要在foreach循環( - = SelectedIndexChanged)之前臨時移除事件處理器,並且在循環之後再次附加處理器(+ = SelectedIndexChanged) – Odrai
ItemSelectionChnaged怎麼樣?它的行爲是否一樣? – wiki
我檢查了ItemSelectionChnaged;一樣的; 我該如何刪除事件處理程序? – wiki