2011-10-25 65 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。