我有一個全局變量,指示是否我的應用程序在只讀模式聽全局變量變化XAML
public static class Global
{
public static event PropertyChangedEventHandler StaticPropertyChanged;
private static void OnStaticPropertyChanged(string propertyName)
{
StaticPropertyChanged?.Invoke(null, new PropertyChangedEventArgs(propertyName));
}
private static bool _isReadOnly = false;
public static bool IsReadOnly
{
get { return _isReadOnly; }
set
{
_isReadOnly = value;
OnStaticPropertyChanged("IsReadOnly");
}
}
}
現在我想聽聽,在我所有的GUI關閉編輯。例如我有一個DataGrid
<UserControl xmlns:models="clr-namespace:MyApp.Models" >
<DataGrid IsReadOnly="{Binding Path=(models:Global.IsReadOnly)}" />
</UserControl>
我怎麼可以聽我的ViewModel中的全局變量而不是本地的?目前,我收到錯誤消息
名稱Global不存在於名稱空間模型中。
但它呢!我已經嘗試重新編譯並重新啓動VS.
這對我已經打開並初始化不起作用圖形用戶界面。他們似乎沒有重新加載該財產。 –
什麼不能用於StaticPropertyChanged方法?您是否使用4.5之前的WPF版本?請分享您的代碼。 – Clemens
你確定'Global'實際上是'MyApp.Models'命名空間的成員嗎? – Clemens