Я использую текстовый блок с привязкой к переменной в статическом классе. Если переменная изначально установлена в классе, текст обновляется. Но когда переменная изменяется внутри метода, связанный текстовый блок не изменяется.
Я устанавливаю значение initialy равным «initial text», а после этого я пытаюсь изменить его в методе. Но текст никогда не меняется, даже если я вижу, что он изменяется в отладчике.
Я добавил текстовый блок с привязкой к статической переменной:
<TextBlock Text="{x:Static local:InfoBanner.InfoBannerText}"/>
В коде я реализовалследующий класс:
public static class InfoBanner
{
static InfoBanner()
{
infoBannerText = "initial text";
}
public static void showMessage(Window window)
{
infoBannerText = "changed text";
Storyboard sb = window.FindResource("storyInfoBanner") as Storyboard;
sb.Begin();
}
public static string infoBannerText;
public static String InfoBannerText
{
get { return infoBannerText; }
set {
infoBannerText = value;
StaticPropertyChanged?.Invoke(null, FilterStringPropertyEventArgs);
}
}
public static readonly PropertyChangedEventArgs FilterStringPropertyEventArgs = new PropertyChangedEventArgs(nameof(InfoBannerText));
public static event PropertyChangedEventHandler StaticPropertyChanged;
}
Я ожидал, что текст обновляется каждый раз, когда я вызываю метод showMessage. Но текст сохраняет значение "исходный текст"
Кто-нибудь имеет представление, что я делаю неправильно? Лучшие реграды hafisch