title: Visual Studio 2019 event handling issue
body: <p>In Visual Studio 2019 I'm creating a program that converts different units of measurements, what it does is if I put in a number for feet it calculates the rest of units with the number used in feet. In my program the first four functions work but the application freezes when I try to input the last four.</p>
  <pre><code>using System;
  using System.Collections.Generic;
  using System.ComponentModel;
  using System.Data;
  using System.Drawing;
  using System.Linq;
  using System.Text;
  using System.Threading.Tasks;
  using System.Windows.Forms;
  
  namespace ConversionLenUnit
  {
      public partial class Form1 : Form
      {
          public Form1()
          {
              InitializeComponent();
          }
  
          private void txtMeter_TextChanged(object sender, EventArgs e)
          {
              txtMillimeter.Text = $&quot;{double.Parse(txtMeter.Text) * 1000}&quot;;
              txtCentimeter.Text = $&quot;{double.Parse(txtMeter.Text) * 100}&quot;;
              txtKilometer.Text = $&quot;{double.Parse(txtMeter.Text) / 1000}&quot;;
              txtInch.Text = $&quot;{double.Parse(txtMeter.Text) * 39.37}&quot;;
              txtYard.Text = $&quot;{double.Parse(txtMeter.Text) * 1.0936}&quot;;
              txtFoot.Text = $&quot;{double.Parse(txtMeter.Text) * 3.28}&quot;;
              txtMile.Text = $&quot;{double.Parse(txtMeter.Text) * 0.00062137}&quot;;
          }
  
          private void txtMillimeter_TextChanged(object sender, EventArgs e)
          {
              txtMeter.Text = $&quot;{double.Parse(txtMillimeter.Text) / 1000}&quot;;
              txtCentimeter.Text = $&quot;{double.Parse(txtMillimeter.Text)/ 10}&quot;;
              txtKilometer.Text = $&quot;{double.Parse(txtMillimeter.Text) / 1000000}&quot;;
              txtInch.Text = $&quot;{double.Parse(txtMillimeter.Text) / 25.4}&quot;;
              txtYard.Text = $&quot;{double.Parse(txtMillimeter.Text) / 914}&quot;;
              txtFoot.Text = $&quot;{double.Parse(txtMillimeter.Text) / 305}&quot;;
              txtMile.Text = $&quot;{double.Parse(txtMillimeter.Text) * 0.00000062137}&quot;;
          }
  
          private void txtCentimeter_TextChanged(object sender, EventArgs e)
          {
              txtMeter.Text = $&quot;{double.Parse(txtCentimeter.Text) / 100}&quot;;
              txtMillimeter.Text = $&quot;{double.Parse(txtCentimeter.Text) * 10}&quot;;
              txtKilometer.Text = $&quot;{double.Parse(txtCentimeter.Text) / 100000}&quot;;
              txtInch.Text = $&quot;{double.Parse(txtCentimeter.Text) / 2.54}&quot;;
              txtYard.Text = $&quot;{double.Parse(txtCentimeter.Text) / 91.44}&quot;;
              txtFoot.Text = $&quot;{double.Parse(txtCentimeter.Text) / 30.48}&quot;;
              txtMile.Text = $&quot;{double.Parse(txtCentimeter.Text) / 160934}&quot;;
          }
  
          private void txtKilometer_TextChanged(object sender, EventArgs e)
          {
              txtMeter.Text = $&quot;{double.Parse(txtKilometer.Text) * 1000}&quot;;
              txtMillimeter.Text = $&quot;{double.Parse(txtKilometer.Text) / 0.000001}&quot;;
              txtCentimeter.Text = $&quot;{double.Parse(txtKilometer.Text) * 100000}&quot;;
              txtInch.Text = $&quot;{double.Parse(txtKilometer.Text) * 39370}&quot;;
              txtYard.Text = $&quot;{double.Parse(txtKilometer.Text) * 1094}&quot;;
              txtFoot.Text = $&quot;{double.Parse(txtKilometer.Text) * 3281}&quot;;
              txtMile.Text = $&quot;{double.Parse(txtKilometer.Text) / 1.609}&quot;;
          }
  
          private void txtInch_TextChanged(object sender, EventArgs e)
          {
              //txtMeter.Text = $&quot;{double.Parse(txtInch.Text) / 39.37}&quot;;
              //txtMillimeter.Text = $&quot;{double.Parse(txtInch.Text) * 25.4}&quot;;
              //txtCentimeter.Text = $&quot;{double.Parse(txtInch.Text) * 2.54}&quot;;
              //txtKilometer.Text = $&quot;{double.Parse(txtInch.Text) / 39370}&quot;;
              //txtYard.Text = $&quot;{double.Parse(txtInch.Text) / 36}&quot;;
              //txtFoot.Text = $&quot;{double.Parse(txtInch.Text) / 12}&quot;;
              //txtMile.Text = $&quot;{double.Parse(txtInch.Text) / 63360}&quot;;
          }
  
          private void txtYard_TextChanged(object sender, EventArgs e)
          {
              //txtMeter.Text = $&quot;{double.Parse(txtYard.Text) / 1.094}&quot;;
              //txtMillimeter.Text = $&quot;{double.Parse(txtYard.Text) * 914}&quot;;
              //txtCentimeter.Text = $&quot;{double.Parse(txtYard.Text) * 91.44}&quot;;
              //txtKilometer.Text = $&quot;{double.Parse(txtYard.Text) / 1094}&quot;;
              //txtInch.Text = $&quot;{double.Parse(txtYard.Text) * 36}&quot;;
              //txtFoot.Text = $&quot;{double.Parse(txtYard.Text) * 3}&quot;;
              //txtMile.Text = $&quot;{double.Parse(txtYard.Text) / 1760}&quot;;
          }
  
          private void txtFoot_TextChanged(object sender, EventArgs e)
          {
              //txtMeter.Text = $&quot;{double.Parse(txtFoot.Text) / 3.281}&quot;;
              //txtMillimeter.Text = $&quot;{double.Parse(txtFoot.Text) * 305}&quot;;
              //txtCentimeter.Text = $&quot;{double.Parse(txtFoot.Text) * 30.48}&quot;;
              //txtKilometer.Text = $&quot;{double.Parse(txtFoot.Text) / 3281}&quot;;
              //txtInch.Text = $&quot;{double.Parse(txtFoot.Text) * 12}&quot;;
              //txtYard.Text = $&quot;{double.Parse(txtFoot.Text) / 3}&quot;;
              //txtMile.Text = $&quot;{double.Parse(txtFoot.Text) / 5280}&quot;;
          }
  
          private void txtMile_TextChanged(object sender, EventArgs e)
          {
              //txtMeter.Text = $&quot;{double.Parse(txtMile.Text) * 1609}&quot;;
              //txtMillimeter.Text = $&quot;{double.Parse(txtMile.Text) * 1609344}&quot;;
              //txtCentimeter.Text = $&quot;{double.Parse(txtMile.Text) * 160934}&quot;;
              //txtKilometer.Text = $&quot;{double.Parse(txtMile.Text) * 1.609}&quot;;
              //txtInch.Text = $&quot;{double.Parse(txtMile.Text) * 63360}&quot;;
              //txtYard.Text = $&quot;{double.Parse(txtMile.Text) * 1760}&quot;;
              //txtFoot.Text = $&quot;{double.Parse(txtMile.Text) * 5280}&quot;;
          }
      }
  }
  </code></pre>
  <p><a href="https://i.stack.imgur.com/6ldsb.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/6ldsb.png" alt="This is the output that I want" /></a></p>