我通过这个 WPF 验证、IDataErrorInfo、INotifyPropertyChange 的东西到达那里,但是刷新时出现了新问题。我有一个窗口,上面有一堆控件。我有一个选项卡式页面界面,为简单起见,有 2 个页面......每个页面上有 5 个控件。
我开始“添加”一条记录,所以所有字段都是空白的。例如:第一页上需要验证的 3 个字段被正确标记为红色边框,以表明它们是必需的……没问题。
现在,我点击第 2 页并立即返回第 1 页。红色边框全部消失。它们不会重新出现红色,除非我明确地通过它们重新聚焦它们,失去焦点并强制它通过 IDataErrorInfo 进行丢失焦点/属性更改验证。
首先,任何解释为什么 WPF 会丢失第一页的外观,只是因为它必须更改第 1 页的可见性以显示第 2 页,然后再返回第 1 页。
其次,关于如何强制控件正确刷新的建议,红色边框指示它们是必需的。
谢谢