gpt4 book ai didi

c# - PropertyChanged 事件始终为空

转载 作者:IT王子 更新时间:2023-10-29 04:05:00 25 4
gpt4 key购买 nike

我有以下(缩写)xaml:

<TextBlock Text="{Binding Path=statusMsg, UpdateSourceTrigger=PropertyChanged}"/>

我有一个单例类:

public class StatusMessage : INotifyPropertyChanged
{
private static StatusMessage instance = new StatusMessage();

private StatusMessage() { }

public static StatusMessage GetInstance()
{
return instance;
}

public event PropertyChangedEventHandler PropertyChanged;
private void OnPropertyChanged(string status)
{
if (PropertyChanged != null)
{
PropertyChanged(this, new PropertyChangedEventArgs(status));
}
}

private string statusMessage;
public string statusMsg
{
get
{
return statusMessage;
}
set
{
statusMessage = value;
OnPropertyChanged("statusMsg");
}
}
}

在我的主窗口构造函数中:

StatusMessage testMessage = StatusMessage.GetInstance();
testMessage.statusMsg = "This is a test msg";

我无法让文本 block 显示测试消息。当我通过调试监视代码时,PropertyChanged 始终为空。有什么想法吗?

最佳答案

谢谢杰罗姆!一旦我设置了 DataContext,它就开始正常工作了!为了测试目的,我将以下内容添加到主窗口构造函数中:

 this.DataContext = testMessage;

关于c# - PropertyChanged 事件始终为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1512627/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com