我正在尋找在web上重現行爲,我幾乎每一次使用Windows窗體:WPF的DataGrid無法重現WindowsForms DataGrid的調整行爲
列調整,讓內容以適合,如果有ISN」滾動條出現足夠的空間。 例如,如果我將窗口最大化,使得我可以獲得比所需空間更多的空間,那麼將調整列的大小以填充所有空間。
如何實現這一目標?這可能嗎?
我正在尋找在web上重現行爲,我幾乎每一次使用Windows窗體:WPF的DataGrid無法重現WindowsForms DataGrid的調整行爲
列調整,讓內容以適合,如果有ISN」滾動條出現足夠的空間。 例如,如果我將窗口最大化,使得我可以獲得比所需空間更多的空間,那麼將調整列的大小以填充所有空間。
如何實現這一目標?這可能嗎?
這是不可能不通過代碼,我測試了成千上萬的方式,我無法通過C#代碼找到解決方案。
使用星寬度
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
您可以用數字設置優先級。
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="1*"/>
第一列是第二列的3倍。
哪裏columndefinition應該放在datagrid?我現在正在使用DataGridTextColumn。此外,您的答案不工作:通過這種方式列將嘗試以適應可用的空間,而如果所有內容都無法顯示,並且我們有更多空間時,他們將「填充」該空間,而不是在DataGridTextColumn的寬度中顯示空白列 – 2012-01-05 23:56:31
可以使用1 *
閱讀上一條評論的編輯,對不起,在您發佈時進行了編輯 – 2012-01-05 23:59:08
這可能無法實現的原因與虛擬化有關。如果列自動調整爲內容大小,隨着用戶上下滾動,它們將不斷增大/縮小,這會導致用戶體驗不佳。 – 2012-01-06 01:32:18
我相信這是可能的winforms,這就是爲什麼我問(我用了很多次!) – 2012-01-06 01:40:46
我現在注意到,只有行是虛擬化,而不是列;也許可以在某種程度上幫助 – 2012-01-06 01:50:19