使用XAML/C#在Metro/Winstore應用程序中支持不同顯示大小/模式/方向的原則是什麼?有準則嗎?佈局與Metro XAML應用中的不同顯示尺寸/方向兼容?
目前我希望能夠以縱向模式顯示2個瓷磚的列表視圖和橫向5個瓷磚。 我希望這些2/5磚在模式更改時自動填充屏幕寬度。
難道我只是手動綁定witdth瓦模板的一個特性,算出它還是有在.NET 4.5更優雅的工具?
使用XAML/C#在Metro/Winstore應用程序中支持不同顯示大小/模式/方向的原則是什麼?有準則嗎?佈局與Metro XAML應用中的不同顯示尺寸/方向兼容?
目前我希望能夠以縱向模式顯示2個瓷磚的列表視圖和橫向5個瓷磚。 我希望這些2/5磚在模式更改時自動填充屏幕寬度。
難道我只是手動綁定witdth瓦模板的一個特性,算出它還是有在.NET 4.5更優雅的工具?
最簡單的解決方案將是使用一個使用LayoutAwarePage
基類和提供了一個可視狀態爲每個ApplicationViewState
(FullScreenLandscape, Filled, Snapped, FullScreenPortrait
)一個BasicPage
模板。然後定義兩種設計並使用視覺狀態在設計之間切換。您可以處理Window.Current.SizeChanged
事件以更新尺寸以使拼貼塊完全成爲屏幕尺寸的一部分,但這樣做會適得其反,並且實際上可能不是最好的設計,因爲用戶可能不會立即看到內容是可滾動的,而且您還需要調整字體,圖像等以適應新尺寸。如果您真的想將內容尺寸映射到屏幕尺寸,您也可以將它們放在Viewbox
控件中。