/ / Xaml (Windows Phone 8 y Silverlight) problema de apilamiento del control de usuario - c #, silverlight, xaml, windows-phone-8

Xaml (Windows Phone 8 y Silverlight) problema de apilamiento del control de usuario - c #, silverlight, xaml, windows-phone-8

Tengo un control de usuario que estoy colocando en una cuadrícula. Dentro de la cuadrícula también estoy dibujando líneas. Estas líneas aparecen sobre el control de usuario como deberían.

Cuando el usuario hace clic en mi control de usuario, estoy mostrando otra parte del control de usuario, un elemento xaml (haciéndolo visible) y necesito que aparezca sobre las líneas dibujadas.

He probado Canvas.ZIndex. Eso parece funcionar solo con elementos dentro de mi control de usuario. Si configuro el control de usuario ZIndex alto, entonces todo aparece encima de las líneas.

Aquí está el ejemplo de trabajo de Min:

Necesito que el cuadrado azul se mantenga por debajo de la línea negra y que la elipse amarilla esté por encima de la línea negra.

--Pagina principal--

<UserControl xmlns:SWE_UserControlOverlap="clr-namespace:SWE_UserControlOverlap"  x:Class="SWE_UserControlOverlap.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="400">

<Grid x:Name="LayoutRoot" Background="White">
<SWE_UserControlOverlap:SWE />
<Line Stroke="Black" StrokeThickness="10" Stretch="Fill" X1="0" Y1="0" X2="1" Y2="1"></Line>
</Grid>
</UserControl>

--Control de usuario--

<UserControl x:Class="SWE_UserControlOverlap.SWE"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
d:DesignHeight="300" d:DesignWidth="400">

<Grid x:Name="LayoutRoot" Background="White">
<Rectangle Fill="Blue" MouseLeftButtonUp="Rectangle_MouseLeftButtonUp_1"></Rectangle>
<Ellipse Margin="100" Fill="Yellow" ></Ellipse>
</Grid>
</UserControl>

Respuestas

0 para la respuesta № 1

No establezca un índice Z en el control, solo modifíquelo para los controles secundarios.

<Line Canvas.ZIndex="1" />
<Rectangle Canvas.ZIndex="0" />
<Ellipse Canvas.ZIndex="2" />

0 para la respuesta № 2

Como he encontrado en varios puntos de la web, esto no es posible.