title: C# custom TextChanged event handler for custom Text property for a UserControl?
body: <p>I created a custom User Control in C# and I added a custom Text property for my control. However I would also like raise an even whenever the value of my Text Property is changed and I want to call it <code>TextChanged</code>.</p>
  
  <p>Here is my code for the property I created for my user control:</p>
  
  <pre><code>using System;
  using System.Collections.Generic;
  using System.ComponentModel;
  using System.Drawing;
  using System.Data;
  using System.Linq;
  using System.Text;
  using System.Threading.Tasks;
  using System.Windows.Forms;
  
  namespace TestControls
  {
      public partial class Box: UserControl
      {
          public Box()
          {
              InitializeComponent();
          }
  
          [Bindable(true)]
          [EditorBrowsable(EditorBrowsableState.Always)]
          [DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)]
          [Browsable(true)]
          [Category("Appearance")]
          public override string Text { get { return base.Text; } set { base.Text = value; this.Invalidate(); } }
  
          [Browsable(true)]
          public event EventHandler TextChanged;
      }
  }
  </code></pre>
  
  <p>As you see I already created the <code>TextChanged</code> Event Handler but I don't know how to link it to the <code>Text</code> Property to make it to where when the value of 'Text' changes, the event will be raised.</p>
  
  <p>Please be aware that I am using Windows Forms and I am not using WPF and I do not want to have to do anything that requires WPF. Every solution I have found for this issue has something to do with WPF or it does not completely solve my issue because they are not trying to create an event handler for a string. I don't understand how other people manage to do this but I would like to know how. Thanks.</p>