2015-11-05 29 views
3

我有一個使用ItemSelectionChanged事件來維護自己選定的項目列表的ListView類。覆蓋的ListView Clear()方法

這是運作良好,但Clear()似乎不火的ItemSelectionChanged事件。
這意味着在Clear()被調用後,該列表仍包含在調用Clear()之前突出顯示的所有項目。

我想重寫Clear()方法,這樣我可以清除該列表自己,但我可以看到,它沒有標記爲虛。有沒有另外一種方法可以使用現有的Clear()方法?

B計劃是,我只寫我自己的方法,並在之後明確調用它,但事實並非那樣好。

listView1.Clear(); 
listView1.ClearMyList(); 

回答

3

其實我不知道C#的這個功能的名字(公衆新的孔隙),但你可以通過創建自己的「customListView」做到這一點。

var listView = new CustomListView(); 
listView.Clear(); 

public class CustomListView : ListView 
{ 
    public new void Clear() 
    { 
     Console.WriteLine("I can clear myself..."); 
    } 
} 

enter image description here

+0

繼承我指的是「公共新的孔隙」這個名字 –

+0

,就是這也繼承? –

+0

nop,這是隱藏的:* [** new **修飾符創建一個具有相同名稱的新成員,並導致原始成員隱藏。](https://msdn.microsoft.com/en-us/library /435f1dw2.aspx)* –