我試圖強制網格/擴展器重新評估它是否需要滾動條,因爲它顯示空白。WPF:使用GridSplitter觸發內容大小調整
我使用這個佈局:
<Grid>
<toolstrip /> <!-- fixed height row -->
<Scrollviewer> <!-- * height -->
<Grid> <!-- all rows are 'Auto' height -->
<Expander />
<Expander> <!-- this one stretches far too high -->
<WPF Toolkit: DataGrid />
<Expander>
<GridSplitter/>
<Expander />
<Grid>
</Scrollviewer>
<stackpanel /> <!-- fixed height row -->
<Grid>
當窗口被初始化的數據網格(WPF工具包)被綁定到一個屬性。通過一些調查,我意識到,當窗口初始化時,GridView中的列開始大約10像素寬,然後添加內容,然後根據XAML中的大小調整大小(全部使用星形寬度 - 例如:2 *)。這會導致網格調整到窗口顯示時所需的高度的6倍左右,然後它不會回彈,並且查看窗口底部的內容的唯一方法是滾動或移動GridSplitter備份到應該在的位置並調整窗口大小。我沒有對任何東西設置VerticalAlignment屬性。 (),InvalidateScrollInfo(),InvalidateVisual()和UpdateLayout()中的InvalidateArrange(),InvalidateVisual(),InvalidateMeasure()和UpdateLayout() )在它上面的Grid上,但它不會縮回。
有沒有什麼辦法可以強制它達到DataGrid中列的寬度?
我不明白 - 你在談論datagrid列的寬度,但垂直滾動問題?網格內容是否會強制行高增長? – MarcE 2011-12-04 22:38:25