MvvmCross插件中的中心PopUp

时间:2014-04-23 04:44:51

标签: windows-phone-8 mvvmcross

我为MvvmCross创建了一个插件,我在其中创建了一个PopUp,但是我在屏幕中居中却遇到了一些麻烦。为了集中我,我试图使用以下代码:

var page = ?; //No idea how to get page
popup.HorizontalOffset = (screen.ActualWidth - ((FrameworkElement)popup.Child).ActualWidth) / 2;
popup.VerticalOffset = (screen.ActualHeight - ((FrameworkElement)popup.Child).ActualHeight) / 2;

在Android中,我可以使用以下方式获得热门活动:

Mvx.Resolve<IMvxAndroidCurrentTopActivity>().Activity

在iOS中,我可以使用以下方式获取顶视图:

UIApplication.SharedApplication.KeyWindow

是否有类似的任何一个?或者是否有更好的方法将PopUp置于屏幕中心?

由于

1 个答案:

答案 0 :(得分:0)

这是在屏幕中央添加弹出窗口的示例代码。将他的代码放在按钮上点击。

Popup p = new Popup();
TextBox tb = new TextBox { Text = "This is a test.\r\n Hello Test!" };
p.Child = tb;
p.VerticalOffset = (this.ActualHeight - tb.ActualHeight) / 2;
p.HorizontalOffset = (this.ActualWidth - tb.ActualWidth) / 2;
p.IsOpen = true;

希望,这对你有用。