Dot-Net

在 WPF 中畫一個十字

  • October 15, 2020

我有一個 WPF 控制項。

我需要在背景中有一個十字架,像這樣:

在此處輸入圖像描述

之後,我可以在我的“交叉”背景上添加其他控制項: 在此處輸入圖像描述

我應該如何繪製十字,知道當我調整控制項大小時,十字應該跟隨它的大小?

快速而骯髒的方法是使用線條並將它們的座標綁定到某些父容器的寬度和高度。像這樣的東西:

<Grid Name="parent">
   <Line  X1="0" Y1="0" X2="{Binding ElementName='parent', Path='ActualWidth'}" Y2="{Binding ElementName='parent', Path='ActualHeight'}" 
          Stroke="Black" StrokeThickness="4" />
   <Line  X1="0" Y1="{Binding ElementName='parent', Path='ActualHeight'}" X2="{Binding ElementName='parent', Path='ActualWidth'}" Y2="0" Stroke="Black" StrokeThickness="4" />
</Grid>

使用網格作為父級意味著線上條之後添加到網格中的任何其他子級都將出現線上條的頂部:

<Grid Name="parent">
   <Line  X1="0" Y1="0" X2="{Binding ElementName='parent', Path='ActualWidth'}" Y2="{Binding ElementName='parent', Path='ActualHeight'}" 
          Stroke="Black" StrokeThickness="4" />
   <Line  X1="0" Y1="{Binding ElementName='parent', Path='ActualHeight'}" X2="{Binding ElementName='parent', Path='ActualWidth'}" Y2="0" Stroke="Black" StrokeThickness="4" />
   <Label Background="Red" VerticalAlignment="Center" HorizontalAlignment="Center">My Label</Label>
</Grid>

引用自:https://stackoverflow.com/questions/10145314