Для этого можно использовать свойство Zindex
.
//initially text box would be on top because Zindex is set to 1 and Rectangle would be behind it
<TextBox x:Name="text" Panel.ZIndex="1" />
<Rectangle x:Name="rect" Panel.ZIndex="0"/>
Внутри события нажатия кнопки сделать это
Panel.SetZIndex(text, 0);
Panel.SetZIndex(rect,1);
теперь прямоугольник будет сверху, а текстовое поле будет позади прямоугольника