我有一个包含一些内容的边框和一个Line
在画布上的边框。边框 + 内容是可拖动的,并且Line
会更新以随边框移动。我的问题是这条线在边界的顶部,所以在某些情况下它会阻止我的内容。我尝试设置 ZIndex 并更改了它们在 XAML 中的顺序,但它没有任何影响。我会冒险猜测这是因为Line
它在改变形状时不断被渲染,并且由于某种原因输出到顶部的屏幕。有什么办法吗?
我的一些代码
XAML
<Canvas x:Name="canvas"
MouseDown="Canvas_MouseDown"
MouseUp="Canvas_MouseUp"
MouseMove="Canvas_MouseMove">
<Border BorderBrush="Aqua" BorderThickness="3" Padding="3" Name="bdr"
Background="{StaticResource GradientBackground}" Canvas.ZIndex="99"
MouseLeftButtonDown="MouseLeftBtnDown">
<Border.RenderTransform>
<TranslateTransform />
</Border.RenderTransform>
<button/>
</Border>
</Canvas>
<Polygon
Canvas.ZIndex="98"
Name="SpeechPoly"
Stroke="Aqua"
StrokeThickness="2"
Fill="{StaticResource GradientBackground}">
</Polygon>
C#
private void Dragging()
{
...
point = bdr.TransformToAncestor(this).Transform(new Point(0, 0));
myPoints.RemoveAt(1);
myPoints.RemoveAt(1);
myPoints.Add(new Point(p.X, p.Y + 50));
myPoints.Add(new Point(p.X, p.Y + 25));
SpeechPoly.Points = myPoints;
}