title: How to detect user-made changes of a NumericUpDown field in WinForms?
body: <p>Having many <code>NumericUpDown</code> fields on my form I want all of them recalculated whenever a user edits one of them.</p>
  
  <p>Needless to say I can't just use <code>ValueChanged</code> event because it is also triggered by programmatic change which gives us an infinite loop.</p>
  
  <p>So how can I distinguish user-made adjustments from programmatic property changes?</p>
  
  <p>I need a user to be able of editing the fields both ways - by clicking increment/decrement buttons and by editing the field text directly.</p>