我在弹出控件中放置一个网格。我希望根据Windows Phone 8应用程序的3种不同布局大小( 480×800,768×1280,720×1280 )自动重新调整网格大小。
但似乎我必须设置网格显式的宽度和高度,因为它根据子控件大小重新调整大小,而我想要弹出窗口所有三种分辨率的屏幕顶部都显示为完整的框。
任何帮助?
答案 0 :(得分:29)
在WP8上使用全屏弹出窗口的最简单方法是设置子宽度&手机当前逻辑分辨率的高度。您可以在此处详细了解WP8 Multi-resolution zen,并在此处了解有关WP8 Multi-resolution APIs的更多信息。
private void Button_Click_1(object sender, RoutedEventArgs e)
{
var myPopup = new Popup()
{
Child = new Border()
{
Child = new TextBlock()
{
Text = "Hello World!"
},
Height = Application.Current.Host.Content.ActualHeight,
Width = Application.Current.Host.Content.ActualWidth,
Background = new SolidColorBrush(Colors.Green)
}
};
this.LayoutRoot.Children.Add(myPopup);
myPopup.IsOpen = true;
}
此代码段有点过于热心,因为shell项(例如SystemTray,AplicaitonBar等)可能会占用渲染区域的空间。
以下是在WXGA仿真器中执行的代码片段的打印屏幕:
这是上面在720P模拟器中执行的代码片段: