当对象的属性值变化时,使其他对象在此属性更改时能得到通知(使用PropertyDescriptor类的AddValueChanged方法)

问题遇到的现象和发生背景

想要实现:当我点击Button按钮时,会被弹窗出来;
问题:现在不知道为什么,没有弹窗

 public partial class Form1 : Form
    {
        Test t = new Test();
        PropertyDescriptor pd = null;
        public Form1()
        {
            InitializeComponent();
            
            var P =  TypeDescriptor.GetProperties(t.GetType());
            pd =   P.Find("A", true);
            pd.AddValueChanged(t, (c,z) =>
            {
                MessageBox.Show(t.A.ToString());
            });
            
        }
        int i = 10;
        private void button1_Click(object sender, EventArgs e)
        {
            t.A = 10+i++;
        }
    }
    public class Test
    {
        public int A { get; set; }
    }

你好,我是有问必答小助手,非常抱歉,本次您提出的有问必答问题,技术专家团超时未为您做出解答


本次提问扣除的有问必答次数,将会以问答VIP体验卡(1次有问必答机会、商城购买实体图书享受95折优惠)的形式为您补发到账户。


因为有问必答VIP体验卡有效期仅有1天,您在需要使用的时候【私信】联系我,我会为您补发。