コントロールを他のすべてのコントロールの上に表示して、部分的にオーバーレイする必要があります。
ベストアンサー1
Canvas
レイアウトでまたは を使用している場合はGrid
、上に配置するコントロールに高い を指定しますZIndex
。
からマイクロソフト:
<Page xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" WindowTitle="ZIndex Sample">
<Canvas>
<Rectangle Canvas.ZIndex="3" Width="100" Height="100" Canvas.Top="100" Canvas.Left="100" Fill="blue"/>
<Rectangle Canvas.ZIndex="1" Width="100" Height="100" Canvas.Top="150" Canvas.Left="150" Fill="yellow"/>
<Rectangle Canvas.ZIndex="2" Width="100" Height="100" Canvas.Top="200" Canvas.Left="200" Fill="green"/>
<!-- Reverse the order to illustrate z-index property -->
<Rectangle Canvas.ZIndex="1" Width="100" Height="100" Canvas.Top="300" Canvas.Left="200" Fill="green"/>
<Rectangle Canvas.ZIndex="3" Width="100" Height="100" Canvas.Top="350" Canvas.Left="150" Fill="yellow"/>
<Rectangle Canvas.ZIndex="2" Width="100" Height="100" Canvas.Top="400" Canvas.Left="100" Fill="blue"/>
</Canvas>
</Page>
を指定しない場合はZIndex
、パネルの子要素は指定された順序でレンダリングされます (つまり、最後の要素が一番上に表示されます)。
もっと複雑なことをしたい場合は、ChildWindow
Silverlight で がどのように実装されているかを確認してください。 半透明の背景とポップアップが 全体にオーバーレイされますRootVisual
。