假设您使用的是具有value属性的控件,如NumericUpDown。然后将数值设置为数列UpDown1.Value= 10;然后.net将触发事件numericaUpDown1ValueChanged(发送方,args),用户也可以直接设置该控件的值,.Net将使用相同的发送方触发相同的事件。
为了能够识别事件是由代码生成还是由直接用户输入的生成,我通常会将我的任务包装如下:
userDirectlyChangingValue = false;
numericaUpDown1.Value = 10;
userDirectlyChangingValue = true;然后,在numericaUpDown1ValueChanged(发送方,args)事件中,我将使用userDirectlyChangingValue来识别事件的生成方式并采取相应的行动。
我的问题是,在.Net中是否有更好/更直接的方法来实现这一点?
谢谢
发布于 2010-09-25 10:55:24
不,这是普遍采用的方法。取消事件处理程序的订阅,然后重新订阅事件处理程序就更糟糕了。
https://stackoverflow.com/questions/3791880
复制相似问题