我試圖以編程方式獲取網格的寬度和高度,在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方法中查詢列值,該方法每50毫秒由BackgroundWorker調用一次,這可能會有所不同。
是否在控件提交後查詢這些屬性? – Dennis
他們從ProgressChanged方法調用,我不知道它是否已被渲染,可能不是由外觀的東西... – ProgrammerAtWork