.net 回滚对绑定到设置的控件的更改

.net 回滚对绑定到设置的控件的更改,.net,winforms,binding,settings,.net,Winforms,Binding,Settings,我有一个表单和一个子表单,都有一些绑定到app.config中设置的控件 子窗体有保存和取消按钮,如果用户单击保存,它将保存设置,如果用户单击取消,窗体将关闭而不保存 当主窗体使用FormClosing事件关闭时,我也会保存该窗体的设置,但由于子窗体设置位于同一位置,因此也会保存这些设置 但也许我已经更改了子表单控件,然后通过“取消”退出-在这种情况下,这些不需要的设置也会在主表单退出时保存 那我该怎么处理呢?显然,我可以在按下Cancel时专门重置子窗体值;但理想情况下,我不希望每次添加或删除

我有一个表单和一个子表单,都有一些绑定到app.config中设置的控件

子窗体有保存和取消按钮,如果用户单击保存,它将保存设置,如果用户单击取消,窗体将关闭而不保存

当主窗体使用FormClosing事件关闭时,我也会保存该窗体的设置,但由于子窗体设置位于同一位置,因此也会保存这些设置

但也许我已经更改了子表单控件,然后通过“取消”退出-在这种情况下,这些不需要的设置也会在主表单退出时保存

那我该怎么处理呢?显然,我可以在按下Cancel时专门重置子窗体值;但理想情况下,我不希望每次添加或删除设置绑定控件时都必须不断更新此代码

我想知道是否有表单级重置或回滚选项,这样我就可以重置子表单的状态,而不必手动操作单个控件


或者我应该为每个表单维护单独的设置文件?我想没有理由不能这样做,但是有更好的方法吗?

我所寻求的解决方案是将不同的应用程序/用户/表单设置分离到不同的设置文件中。请参阅:

通过对设置进行更精确的控制,我只能在FormClosing事件中重新加载与此表单相关的设置