So you have MainWindow with UserControl1, and after pressing button on uc1 you open another MW with usc1 and replace it with usc2 in your newly opened window?
private void Button_Click(object sender, RoutedEventArgs e)
{
MainWindow maingrid = Application.Current.MainWindow as MainWindow;
if (maingrid.uscholder.Children.Count > 0)
maingrid.uscholder.Children.Clear();
maingrid.uscholder.Children.Add(new UserControl2());
}
is this what you want ?