User controls are designed to be kind of independent pieces, so it won't be a good idea to do some coupling inside each other. However what you can do is expose necessary interface from UC_2 and use it in UC_1. Kind of the same way validators are bound to the controls they validate.
Simplistic example comes below. This is just an idea of what might be done. You know better what kind of binding you need.
In UC_2 have:
public string Name
{
get { return txtName.Text; }
set { txtName.Text = value; }
}
Similarly for other properties. And now in UC_1:
public string NameControlId
{
get; set;
}
In the markup make sure to set this property:
<blah:UC2 ID="NameControl1" runat="server" />
<blah:UC1 ... NameControlId="NameControl1" />
And then just use it in UC1 to find the necessary control and use the Name property:
UC2 nameControl = (UC2)Page.FindControl(NameControlId);
nameControl.Name = "name from UC1";
Warning - FindControl
method is not recursive, so the above code most likely won't work. You most likely will need a recursive version, which are plenty in the internet. Example.