I have many winforms `TextBox` that let user input values. I'm writing event handlers for the `LostFocus` event and they all follow the same pattern except they change a different field variable of the current `Form` instance. I'm repeating blocks of code with very minor differences too many times.

I've seen people refer to Reflection but it seems a little beyond my grasp as a novice C# programmer

```
class myForm: Form
{
  public myForm()
  {
    // .... codes
    textbox1.LostFocus += OnExit;
    textbox2.LostFocus += OnExit;
    // repeats above for all textbox;
  }
  protected int tb1value;
  protected int tb2value;
  //... lots of fields but names relate to each textbox control
  protected void OnExit(object sender, EventArgs e)
  {
    TextBox s = sender as TextBox;
    /* how do I do below??
    find the variable/field that relates to this textbox(sender)
    change that field's value
    if sender is textbox1, then find tb1value and change it
    */
  }
}

```

How do I avoid writing a `OnExit` for each `TextBox`?