WPF學習筆記(3):ListView根據內容自動調整列寬
阿新 • • 發佈:2019-01-06
DataGrid中,只要不設定DataGrid的寬度和列寬度,或者將寬度設定為Auto,那麼表格就會根據內容自動調整寬度,以顯示所有內容。但如果是ListView,按以上方法設定,卻達不到列寬自動調整的效果, 列寬在控制元件第一次載入的時候已經確定,之後不會隨著某列資料長度的增加和減少而改變列寬。找了很多方法,感覺下面的方法比較簡單和實用,在每次增加或者刪除資料集合的時候,將 GridViewColumn 的 Width 屬性 設定為 無效值,觸發其自適應效果。
原貼地址:https://blog.csdn.net/djc11282/article/details/42261677
原貼程式碼:
1 GridView gv = lvTrans.View as GridView; 2 if (gv != null) 3 { 4 foreach (GridViewColumn gvc in gv.Columns) 5 { 6 gvc.Width = gvc.ActualWidth; 7 gvc.Width = Double.NaN; 8 } 9 }C# Code
我將程式碼略作了修改:
1 //使listview根據內容自動調整寬度C# Code2 if (lvAcct.View is GridView gv) 3 { 4 foreach (GridViewColumn gvc in gv.Columns) 5 { 6 gvc.Width = 100; 7 gvc.Width = Double.NaN; 8 } 9 }