我有一个 NumericUpDown 控件,它绑定到实现 INotifyPropertyChanged 的业务对象上的 int 属性。NumericUpDown 控件的数据源更新模式设置为 OnPropertyChanged,并且该控件的 ReadOnly 属性设置为 false。这可以按预期工作,但有一个例外:如果我在 NumericUpDown 控件的文本框部分输入一个值,则在控件失去焦点之前,控件绑定的属性的值不会更新。
我的表单上有一个带有多个按钮的 ToolStrip。单击这些按钮不会导致 NumericUpDown 控件失去焦点,因此在通过单击这些按钮之一对业务对象执行任何操作之前,我调用 toolStrip.Focus() 以确保 NumericUpDown 的文本框部分中的值控制已被推回业务对象。这似乎对我有用,但我想知道这是否是 NumericUpDown 控件在这种情况下的预期行为,如果是,其他人如何解决这种情况?感谢您的反馈意见!