我有一个表单和一个子表单,这两个表单都绑定了一些绑定到app.config中的设置的控件。对设置绑定的控件进行回滚更改
子表单有Save和Cancel按钮,如果用户点击保存,它将保存设置,如果他们点击取消,表单会关闭而不保存。
当主窗体关闭(使用FormClosing事件)时,我也保存设置(对于该窗体),但由于子窗体设置在相同的位置,它也保存这些设置。
但也许我已经改变了子窗体控件,然后通过取消退出 - 在这种情况下,这些不需要的设置也将在主窗体退出时保存。
那么我该如何处理呢?显然,当按下取消按钮时,我可以专门重置子表格的值;但理想情况下,我希望在每次添加或删除设置绑定控件时都不必更新此代码。
我想知道是否有表单级重置或回滚选项,所以我可以重置子表单的状态,而无需手动操作单个控件?
或者我应该为每个表单维护单独的设置文件?我认为没有理由不能做到这一点,但有没有更好的办法?