[英]Pushing ActualWidth/ActualHeight from a custom control to TemplateBinding
[英]ActualWidth and ActualHeight of custom control in grid are zero, even after measure/arrange
我有一個帶有自定義控件GameView的Win8應用程序,我已經在我的頁面上實例化了三次(如gvMap,gvOurBase和gvEnemyBase),並放入網格中。 我需要獲得控件的實際大小,以便我可以設置RenderTransform並使用適當的縮放渲染所有內容。
但是,每當我嘗試獲取控件的ActualWidth
或ActualHeight
時,我總是得到零。 即使我等到頁面加載並在我的控件上調用Measure and Arrange,也會發生這種情況。
如何獲得控件的大小? 或者我不允許他們在網格中這樣做? 還有另外一種方法可以讓RenderTransform不依賴於控件的大小嗎? 我希望每個控件都顯示整個游戲地圖的特定部分 - gvMap顯示整個地圖,gvOurBase顯示玩家擁有城市的地圖部分,gvEnemyBase顯示敵人擁有城市的地圖部分。
那可能發生。 我建議使用MyControl.RenderSize.Width
而不是MyControl.ActualWidth
。 在由動態數據綁定產生的布局中,並不總是填充Actual
值。
顯然我需要在我的自定義控件類上覆蓋MeasureOverride
。 哎呀!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.