sách gpt4 ai đã đi

xaml - XAML 中的中心弹出窗口

In lại 作者:行者123 更新时间:2023-12-04 17:23:57 28 4
mua khóa gpt4 Nike

我使用以下代码创建了一个弹出窗口,但我不知道如何将它居中
我试图在运行时自动更改边距,但我不知道该怎么做,但是有人知道如何将弹出窗口居中吗?
它没有标准维度,因为我需要全局化我的程序



























làm mới

我尝试在下面使用 user1603313 的答案,但它没有成功,因为它说弹出窗口内的网格大小为 NaN。
我也尝试将方法移到网格中,但它也没有成功
我正在谈论的方法是正确更新网格

private void LoginPopup_Loaded_1(object sender, RoutedEventArgs e)
{
LoginPopup.HorizontalOffset = (Window.Current.Bounds.Width - gdChild.ActualWidth) / 2;
LoginPopup.VerticalOffset = (Window.Current.Bounds.Height - gdChild.ActualHeight) / 2;
}

1 Câu trả lời

这是您问题的解决方案。我正在重写 xaml 代码并进行修改,您可以在代码后找到解释。

     























这里我添加了一个事件 Loaded="LoginPopup_Loaded_1"到弹出窗口的 xaml

这是 C# 中的事件代码
    private void LoginPopup_Loaded_1(object sender, RoutedEventArgs e)
{
LoginPopup.HorizontalOffset = (Window.Current.Bounds.Width - gdChild.ActualWidth) / 2;
LoginPopup.VerticalOffset = (Window.Current.Bounds.Height - gdChild.ActualHeight) / 2;
}

解释 :

HorizontalOffset 获取应用程序窗口左侧和弹出窗口左侧之间的距离。

同样垂直偏移获取窗口顶部和弹出窗口顶部之间的距离

因为我们必须将它居中对齐,所以我们必须从应用程序窗口的宽度和高度中减去弹出窗口的宽度和高度的一半(弹出窗口的中心是弹出窗口与其顶部和左侧边界的距离的一半)

代码写在 Loaded="LoginPopup_Loaded_1"事件,因为在应用程序窗口中呈现元素时会调用此事件,并且 Grid 被采用,因为它是所有子元素的容器 Grid。

我希望我清楚:)

关于xaml - XAML 中的中心弹出窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13906170/

28 4 0
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com