Hello. I am having trouble with the NumericUpDown control in a program I am writing. On the ValueChanged event, the program performs a somewhat processor intensive operation, so that when the control is changed rapidly (e.g. by scrolling), the operation occurs several times in succession and the program is slowed considerably. However, it is only necessary that the operation be completed for the final value.

Is there any way I can get the control to ignore changes to its value if the value changes again in a very short time span? I attempted to use separate threads that were created when the value changed, waited a few milliseconds, and then carried out the operation if the value had remained constant, but as you can probably imagine this method was finicky at best and seemed unnecessarily messy regardless.

I've been trying to solve this problem for some time, so any assistance would be greatly appreciated.