2011-10-25 63 views
1

我希望我的MenuBar根据窗口的宽度缩放它的宽度。WPF LayoutUpdated事件处理程序不能最大化工作

我写了下面的代码。

private void Window_LayoutUpdated(object sender, EventArgs e) 
{ 
    Window x = (Window)proj.App.Current.MainWindow; 
    menu1.Width = x.Width; 
} 

它适用于手动缩放窗口。但是,当我最大化它时,菜单栏不会更改大小。这些事件是否有其他事件处理程序?

回答

0

您可以使用Window的Size changed事件来确定窗口大小何时更改。

如果你想知道什么时候窗口是最小化或最大化,你可以处理state changed事件

+0

OK。我已经知道了。 LayoutUpdated是可以的。我必须改变的只是使用ActualWidth。 – mihsathe

1

这是非常简单的。对于那些想知道的,我需要使用x的ActualWidth属性。 ActualWidth实际上会读取新的宽度,而不是使用存储的值。所以它被最大化所打击。 OK。