我有一个 NumericUpDown。当用户更改其值时,我会显示一个 MessageBox 进行确认。如果用户选择是,一切都很好。如果用户选择否,我想恢复原始值。
我遇到了两个问题:
Q1。如何获得原始值。
我将它存储在一个私有成员变量中,当用户选择是时更新。但我想知道是否有更好的方法。
Q2。将值更改为原始值再次触发我的事件处理程序。
我已经设置了一个 if 条件来处理它。
这是我当前的代码:
if (mNumericUpDownValue != mReactantNumericUpDown.Value)
{
bool change = !mIsModified;
if (mIsModified && ReportChangeWarning())
{
change = true;
}
if (change)
{
mReactantGroup = (int)mReactantNumericUpDown.Value;
ClearUserValues();
UpdateControls();
}
else
{
mReactantNumericUpDown.Value = mNumericUpDownValue;
}
}