在我的項目中有很多嵌套的網格。大多數行和列的寬度在XAML中定義爲「*」。
我想通過將其他行的高度設置爲0來擴展特定行(讓我們說Row1),並且我使用.ActualHeight屬性來獲取Row1的寬度,然後它不會給我實際的高度。
據我所知,這是因爲網格行和列的高度和寬度都設置爲渲染時間。
我在網上搜索和有人建議使用UpdateLayout()方法..但那也不適合我。
我無法發佈代碼片斷,因爲它代碼很長。
我在c#.net wpf中的項目。如何在渲染前獲取網格行的實際高度
1
A
回答
4
你需要做一個完整的佈局更新,那就是你需要調用措施,安排和UpdateLayout請:
//Make the framework (re)calculate the size of the element
_Element.Measure(new Size(Double.MaxValue, Double.MaxValue));
Size visualSize = _Element.DesiredSize;
_Element.Arrange(new Rect(new Point(0, 0), visualSize));
_Element.UpdateLayout();
_Element是一個FrameworkElement的(電網是一個)。
0
基於Baboon post的解決方案爲我工作。我需要對摺疊的FrameworkElement中的幻燈片進行動畫處理,不知道ActualHeight值的類似問題。
element.Visibility = Visibility.Visible;
element.InvalidateArrange();
element.UpdateLayout();
double elementHeight = element.DesiredSize.Height;
DoubleAnimation animation = new DoubleAnimation(0, elementHeight, TimeSpan.FromMilliseconds(animMilisec));
element.BeginAnimation(Rectangle.HeightProperty, animation);
現在在呈現元素之前,我有權訪問它的最終高度;
相關問題
- 1. 如何獲得網格的實際網格行高度與RowDefinition的高度*
- 2. Javascript - 獲取實際渲染字體高度
- 3. 如何在渲染之前獲取StackPanel高度?
- 4. 獲取超網格的實際寬度
- 5. 獲取實際WPF網格寬度
- 6. simageid.width和高度不返回實際的渲染圖像大小
- 7. 表格的實際高度
- 8. Powerbuilder獲取statictext的實際高度
- 9. 獲取實際的視圖高度
- 10. 在渲染後獲取libreoffice編寫器中表格行的高度
- 11. 的ExtJS網格 - 如何獲得列的寬度渲染功能
- 12. 如何將網格中元素的高度綁定到grid.row的實際高度
- 13. 我如何獲得堆疊面板的實際當前高度?
- 14. 如何獲得實際屏幕高度?
- 15. 用JavaScript獲取手機實際高度
- 16. 獲取實際屏幕高度(android)
- 17. 如何獲得自動高度的標籤的實際高度
- 18. GWT CellTable完成渲染後,如何獲取高度?
- 19. 如何在GWT中獲取國際化按鈕文本的渲染寬度?
- 20. Angular JS - 在查看渲染前獲取指令中的元素高度
- 21. 如何獲取SVG文本的實際高度(不是邊界框高度)
- 22. 如何獲取ActionBar進行渲染?
- 23. Silverlight獲取設置爲自動網格的實際寬度
- 24. 如何從JavaScript內計算HTML表格的渲染高度?
- 25. Chrome渲染行內塊高度錯誤
- 26. EXTJS網格渲染
- 27. Kendo Ui ASP網格渲染速度慢
- 28. 如何獲得圖像的實際寬度和高度
- 29. Java LWJGL高度圖渲染
- 30. 用jQuery獲取html元素的渲染高度
工作就像一個魅力,謝謝你先生 – JohnChris 2017-05-12 08:06:40