我希望在第一列的左側留出一些空間,您可以點擊並按住來選擇多個列表視圖項目。在此picture中,您可以在第5列的右側看到自動生成的「空白」列。有沒有辦法將該「空白」列移動到左側?在列表視圖中右對齊列
我不想對齊內容本身或添加另一列。兩者都無法解決從左側選擇項目的問題。
我希望在第一列的左側留出一些空間,您可以點擊並按住來選擇多個列表視圖項目。在此picture中,您可以在第5列的右側看到自動生成的「空白」列。有沒有辦法將該「空白」列移動到左側?在列表視圖中右對齊列
我不想對齊內容本身或添加另一列。兩者都無法解決從左側選擇項目的問題。
我希望在第一列的左側留出一點空間,您可以點擊並按住選擇多個列表視圖項目。
我不明白爲什麼這是必要的。您可以單擊第一列中的單元格並向右拖動。這將在多個列中選擇多個項目。
如果您想這樣做,您可以通過在第一個位置添加一個空白列,並以您希望的任何寬度來實現。添加項目時,將它們添加到第二列,將第一列留空。
在這幅圖中,您可以在列5的右側看到自動生成的「空白」列。有沒有辦法將該「空白」列移動到左側?
這並不完全是這樣。這只是一個沒有列的死區。所以不,沒有辦法將它移到左邊。列從左側開始插入。
…也就是說,除非您通過濫用Windows對控件的右對左佈局支持來破解它。將控件的RightToLeft
屬性設置爲Yes
,將其RightToLeftLayout
屬性設置爲True
。現在將從右側插入列。這可能會有其他不希望的影響;你需要徹底測試。並確保您在通常使用從右到左佈局的系統上回到它回到從左到右佈局模式。
我不想對齊內容本身或添加另一列。兩者都無法解決從左側選擇項目的問題。
是的,當然增加另一列將做到這一點。無論是我還是完全不知道你的意思是「能夠從左側選擇項目」。
現在我更好地瞭解你正在嘗試做的,我的建議是縮進在第一列的項目一定量。 ListView支持縮進,但它需要將ImageList附加到控件。沒有ImageList,它只是忽略縮進設置。但是,如果您不使用圖標,則ImageList不必實際包含任何圖像。一個空的「虛擬」ImageList工作得很好。
以下是具體步驟(順序並不重要,你可以通過代碼做到這一點的設計師通過視覺或編程):
View
屬性設置爲Details。SmallImageList
屬性以引用剛剛添加的ImageList。IndentCount
屬性。將IndentCount
設置爲1可能就足夠了。它實際上是以ImageList的ImageSize
屬性的倍數進行度量的(因爲這是一個小圖像列表,通常爲16 × 16,但在更高的DPI設置下可以更大)。如果需要對縮進寬度進行更細化的控制,則可以簡單地將ImageList的ImageSize
屬性設置爲1 × 1.然後IndentCount
將以單個像素爲單位進行測量。
'我真的不明白爲什麼這是必要的。您可以點擊第一列中的單元格並拖動到右側「當我嘗試它時,只是讓我先選擇的項目不讓我選擇多個項目。我使用的Listview具有設置View:Details和FullRowSelect:True。這是否起作用? – drouning
@drouning不,那沒關係。它在我的機器上正常工作。我沒有辦法記錄我在屏幕上看到的內容,但是如果將鼠標光標放在第一個項目的左側,我可以單擊並拖動以選擇多個項目。它的工作方式與Windows資源管理器完全相同。毫無疑問,它是一個小的點擊目標,這就是爲什麼大多數用戶從右側或底部開始進行多重選擇跳舞的原因。我看不到讓您的應用程序行爲不同的令人信服的理由。使用這個習語的人習慣了它。但現在我明白了,我會更新我的答案 –
將水平對齊設置到右邊 – Claudius
你想對齊列的內容嗎?或者你想在左邊插入空列? –
Assumning View = Details:您可以對齊除第一列以外始終左對齊的所有內容。 – TaW