我已经看到了几个类似的问题,但没有解决方案适合我,可能是因为我的 Grid 设置为Stretch
. 这是我想要达到的结果。基本上,我有一个网格,我想画一条 X 轴线(就像这个问题末尾的图片一样)。
我的 XAML
<Grid x:Name="MainGrid" HorizontalAlignment="Stretch" Background="#FF4A70F1">
我的代码隐藏
Line XAxis = new Line();
XAxis.Stroke = System.Windows.Media.Brushes.Black;
XAxis.StrokeThickness = 1;
XAxis.X1 = 0;
XAxis.X2 = MainGrid.RenderSize.Width;
XAxis.Y1 = MainGrid.RenderSize.Height / 2;
XAxis.Y2 = MainGrid.RenderSize.Height / 2;
MainGrid.Children.Add(XAxis);
我的问题
我希望这条线跨越整个窗口,即使我调整/最大化窗口。但是,上面对 X2,Y1,Y2 的计算不起作用(全部计算为 0,因此没有显示 LINE),无论我使用ActualSize
还是 *RenderSize*
. 有人可以指出如何解决这个问题吗?谢谢