所以我被要求解决一个已经存在一段时间的旧 Windows 窗体实用程序的问题(至少在我的任何同事出现之前)。该表单有一个数据绑定的 numericUpDown 控件。问题是,当您单击向上或向下箭头时,值会更改并保存确定,但是,如果您只是输入一个数字并单击保存它不会保存。就像数据绑定从来没有看到变化,所以来自 WPF 背景我猜想改变以下
TaskDaysToComplete.DataBindings.Add("Value", taskTemplate, "DaysToComplete");
对此
TaskDaysToComplete.DataBindings.Add("Value", taskTemplate, "DaysToComplete", false, DataSourceUpdateMode.OnPropertyChanged);
会解决我的问题,它确实做到了。您现在可以输入一个数字或使用控件上的向上/向下箭头来设置“值”属性。
我的问题是,首先发生了什么?我猜默认的 DataSourceUpdateMode 是 OnValidation ,但是什么时候会发生这种情况,为什么在使用向上/向下箭头时可以,但在输入内容时似乎从未发生过。
谢谢!