One simple way to create the appearance of "bringing to front a user control" would be having each user control Hide()
itself when the [OK] button is clicked. Then the main form can modify the visibility of the "other" form based on the non-visibility of the first:

Main View
Toggle the visibility of user controls when the OK button is clicked.
public partial class MainView : Form
{
public MainView()
{
InitializeComponent();
userControlB.Visible= false;
userControlA.VisibleChanged += (sender, e) =>
{
if(!userControlA.Visible)
{
userControlB.Visible = true;
}
};
userControlB.VisibleChanged += (sender, e) =>
{
if (!userControlB.Visible)
{
userControlA.Visible = true;
}
};
}
}
UserControl A
public partial class UserControlA : UserControl
{
public UserControlA()
{
InitializeComponent();
buttonOK.Click += (sender, e) =>
{
Hide();
};
}
}
UserControl B
public partial class UserControlB : UserControl
{
public UserControlB()
{
InitializeComponent();
buttonOK.Click += (sender, e) =>
{
Hide();
};
}
}