Windows runtime 如何在弹出控件中将边框对齐为中心

Windows runtime 如何在弹出控件中将边框对齐为中心,windows-runtime,Windows Runtime,我正在尝试将边框与弹出窗口的中心对齐。但它只在左上角对齐。有人能建议如何将边框与弹出控件的中心对齐吗 <Grid Name="MainGrid" Background="Green"> <Popup Name="mainpopup" IsOpen="True" > <Border Name="MainBorder" Background="LightBlue" HorizontalAlignment="Center" Vertic

我正在尝试将边框与弹出窗口的中心对齐。但它只在左上角对齐。有人能建议如何将边框与弹出控件的中心对齐吗

 <Grid Name="MainGrid" Background="Green">
    <Popup Name="mainpopup" IsOpen="True"  >
            <Border Name="MainBorder" Background="LightBlue" HorizontalAlignment="Center" VerticalAlignment="Center" Height="100" Width="1300">

            </Border>
    </Popup>
</Grid>

其他详细信息:在我的应用程序(winrt应用程序)中,边框高度设置为“自动”,它根据其内容高度获取高度


提前感谢。

在我看来,您的屏幕分辨率应该是1366X768,这会使您的边框看起来左对齐。通过最小化宽度进行检查,并在其中心对齐时进行更新。

您可以通过处理弹出窗口打开事件来实现,并设置弹出窗口的垂直偏移,如下所示

var bound = Window.Current.Bounds;
        var center = (bound.Height / 2) - (poupChildBorder.ActualHeight / 2);
        Mypopup.VerticalOffset = center;

没有,它再次出现在左上角。你能举一个完整的例子吗,您使用哪一种?您拥有的内容位于
Border
的内容中?我只有几个堆栈面板,内部有文本框和一些文本块,并根据我在Border setting
HorizontalAlignment=“Center”
VerticalAlignment=“Center”中对堆栈面板的操作设置可见性
?很抱歉,这不起作用。边框本身没有对齐,那么为什么在边框内使用stackpanelnice解决方案会有一些动态内容,所以有时我会将边框实际高度设置为0.0。