我正在尝试在 UserControl 中以编程方式获取网格的宽度和高度。
这是我的XAML
网格:
<Grid Name="BallGrid" Background="DarkBlue" Height="auto" Width="auto">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
</Grid>
但是这两个:
double width = BallGrid.ColumnDefinitions[0].ActualWidth;
double height = BallGrid.RowDefinitions[0].ActualHeight;
返回 0,
还有这些
double width = BallGrid.ColumnDefinitions[0].Width.Value;
double height = BallGrid.RowDefinitions[0].Height.Value;
返回两个返回 1。
我想知道实际宽度,最好使用与边距大小相同的单位。如何以编程方式获取这些值?
在 ProgessChanged 方法中查询列值,该方法由 BackgroundWorker 每 50 毫秒调用一次,这可能会有所不同。