TitleBar高度返回不一致

时间:2017-01-22 07:40:18

标签: c# uwp height titlebar

长话短说,我试图运行这个特定的代码

CoreApplicationViewTitleBar coreTitleBar = CoreApplication.GetCurrentView().TitleBar;
coreTitleBar.ExtendViewIntoTitleBar = true;
dragarea.Height = coreTitleBar.Height;
HamBut.Margin = new Thickness(0, dragarea.Height, 0, 0);
Window.Current.SetTitleBar(dragarea);

当我第一次运行时,coreTitleBar.Height返回32.但是,当我尝试重新运行它时,它返回0.

这应该是一个错误,还是我做错了?

目前正在使用Visual Studio 2017 RC。

1 个答案:

答案 0 :(得分:2)

这取决于代码运行的时间,是的,UWP并不是非常一致。

the docs don't explicitly mention需要订阅len(target), len(source)事件,然后更新回调中的高度。这将解释由于某种原因标题栏大小发生变化的情况。

coreTitleBar.LayoutMetricsChanged

它也消除了"但它有时会消除"问题