2010-03-09 81 views
3

我有一個網格,其中的一列中包含圖像。圖像本身沒有任何寬度或高度集,但其大小通過ColumnDefinition集正確控制。從這我會假設圖像控制器實際上有一個寬度和高度設置,但是當我嘗試綁定另一個元素的寬度和高度它不起作用。調試時發現Image.Height和Image.Width的值是NaN。爲什麼?實際顯示時,我的控件大小如何可以爲NaN?

<Grid> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="350"></ColumnDefinition> 
     <ColumnDefinition Width="*"></ColumnDefinition> 
     <ColumnDefinition Width="10"></ColumnDefinition> 
     <ColumnDefinition Width="*"></ColumnDefinition> 
    </Grid.ColumnDefinitions> 

    <Grid Grid.Column="0"> 
     <Image x:Name="_image" Source="image.jpg"></Image> 
    </Grid> 

</Grid> 

回答

3

您正在尋找.RenderSize或.ActualSize

+2

或'ActualSize'? – 2010-03-09 11:55:33

+0

Thx!兩者都給出相同的值,但ActualSize更容易使用,因爲我可以直接獲取ActualWidth和ActualHeight。 – stiank81 2010-03-09 12:00:07

1

調試什麼時候?

NAN在佈局階段從控件用於表示「您想要的任何尺寸」或「未定義」。因此,在特定階段的任何斷點可能會顯示不同大小的NAN。

你的控件沒有定義特定的尺寸,所以自然是「NAN」。最終的大小存儲在其他屬性;)

+1

我發現它有助於爲** **所需的寬度和高度 – 2010-03-09 12:03:57

+0

說得好解釋WPF的寬度和高度;)下次會記住這一點。 – TomTom 2010-03-09 12:12:12

相關問題