SilverLight childWindow
If by ChildWindows you mean a ChildWindow object in Silverlight, then it should always appear on top as the documentation says:
A ChildWindow is always rendered into a modal popup that blocks the user from interacting with the main user interface.
But if by ChildWindow you mean something else that you created in Silverlight, you need to set the ZIndex property of that object to a very large number:
The z-order of an object determines whether the object is in front of or behind another overlapping object. From default, the z-order of objects within a Group is determined by the order in which they are declared. Objects that are declared later appear in front of previously declared objects. You can change this behavior by setting Canvas .. ::. ZIndex attached property of the panel objects. Higher values are closer to the foreground; lower values are further from the foreground.
In your code, you should write:
myObject.SetValue(Canvas.ZIndexProperty, 100);
and in XAML you need to write
<Rectangle Canvas.ZIndex="100" />
a source to share