1. Your UserControl needs a custom event:
TextBoxTextChanged
with its signature like a standard
EventHandler[
^]. Fire the event whenever the
TextBox[
^] fires its
TextChanged[
^] event.
2. Your UserControl needs a public property
TextBoxText
, too. Implement only the getter part returning the TextBox's current text.
3. The second UserControl needs to subscribe to the first UserControl's TextBoxTextChanged event. Upon firing of the event, an event handler routine will be called. In the event handler, copy text from sender's TextBoxText property (if existing) to this.TextBox1.Text (or whatever it is actually called).