簡體   English   中英

即使在測量/排列之后,網格中自定義控件的ActualWidth和ActualHeight也為零

[英]ActualWidth and ActualHeight of custom control in grid are zero, even after measure/arrange

我有一個帶有自定義控件GameView的Win8應用程序,我已經在我的頁面上實例化了三次(如gvMap,gvOurBase和gvEnemyBase),並放入網格中。 我需要獲得控件的實際大小,以便我可以設置RenderTransform並使用適當的縮放渲染所有內容。

但是,每當我嘗試獲取控件的ActualWidthActualHeight時,我總是得到零。 即使我等到頁面加載並在我的控件上調用Measure and Arrange,也會發生這種情況。

如何獲得控件的大小? 或者我不允許他們在網格中這樣做? 還有另外一種方法可以讓RenderTransform不依賴於控件的大小嗎? 我希望每個控件都顯示整個游戲地圖的特定部分 - gvMap顯示整個地圖,gvOurBase顯示玩家擁有城市的地圖部分,gvEnemyBase顯示敵人擁有城市的地圖部分。

那可能發生。 我建議使用MyControl.RenderSize.Width而不是MyControl.ActualWidth 在由動態數據綁定產生的布局中,並不總是填充Actual值。

顯然我需要在我的自定義控件類上覆蓋MeasureOverride 哎呀!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM