2011-08-12 10 views
3

想知道是否有人可以幫助Windows窗體/ .net ListView問題(在這種情況下使用C#...)如何本地化/重命名Winforms ListView中的「默認」(無組)標題?

我們將ListViewItems添加到ListView。他們中的一些,根據設計,不屬於任何組。在運行時,這些出現在一個名爲「默認」的組中,而不是在我們的代碼中創建 - .Net執行此操作。

(請注意,當列表視圖中只有非組項目時,不會顯示此「默認」標題,但只要添加包含項目的組,就會顯示該標題)。

無論如何,(令人驚訝的)問題是似乎沒有辦法本地化或重命名該組。 (a)否則通知我,即如何重命名,或 (b)如何根本不顯示「默認」標題,有沒有 ? (注意:我知道我們可以重寫,以確保所有項目都是分組的,這樣我們就可以完全控制所有組名,但是有很多邏輯嵌入到控件中,我寧願避免任何重構如果可能的話,還有,我很想知道這對微軟是否有意義的監督,或者是否可以改變,並且我太愚蠢以至於無法找到答案)。 感謝 Karagee

回答

3

這裏是什麼文件說

未分配到組的任何項目將出現在默認的組,它具有標題標籤中的「默認組{0}」。 默認羣組未包含在羣組中,並且不能更改。它主要用於調試以確保所有項目已正確添加到組中。

所以,我認爲這是不可能的。

2

您不能更改默認標題。

但是您可以添加新的羣組(屬性組),並將所有項目分配到此組(屬性Items/Group)。

0

您可以使用反射來重命名Default組的標題文本。ListView中有一個名爲defaultGroup的私有ListViewGroup字段,您可以使用反射來操作此字段並執行任何您想要的操作,例如重命名標題文本。

2

將ShowGroups屬性設置爲「false」,這應該做的伎倆。

//代碼行 lstView.ShowGroups = false;

對於列表視圖,默認情況下此屬性設置爲true,除非指定,否則任何ListViewItem都將設置爲此默認組。通過將此設置爲false,您將刪除列表視圖中的組。