例如,我有一個網格,其中一個單元格包含圖像。因爲我已經將單元格背景設置爲一種顏色,所以我可以看到當用戶調整瀏覽器大小時,網格正在調整大小,但是如何讓圖像調整大小?如何自動調整圖像大小以適合Silverlight網格單元格中的調整大小的畫布
我忘了說我的圖像是在畫布內部,而畫布自動調整到網格單元格的大小,我的圖像不會自動調整大小到畫布。
例如,我有一個網格,其中一個單元格包含圖像。因爲我已經將單元格背景設置爲一種顏色,所以我可以看到當用戶調整瀏覽器大小時,網格正在調整大小,但是如何讓圖像調整大小?如何自動調整圖像大小以適合Silverlight網格單元格中的調整大小的畫布
我忘了說我的圖像是在畫布內部,而畫布自動調整到網格單元格的大小,我的圖像不會自動調整大小到畫布。
我已經找到了答案,這:
<Canvas Name="canvas" >
<Canvas.Background>
<ImageBrush ImageSource="/hsl;component/face-recognition.jpg" />
</Canvas.Background>
</Canvas>
如果將圖像直接放置在網格中,則其默認Stretch
行爲與Stretch="Uniform"
將確保隨網格一起調整大小。嘗試以下XAML來驗證:
<Grid x:Name="LayoutRoot" ShowGridLines="True">
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<Image Source="MyImage.png"
Grid.Row="0"/>
</Grid>
但是,根據您更新的問題...您的圖像位於畫布內。帆布面板旨在提供其子女的絕對定位。您無法在畫布中拉伸或對齊元素。
底線 - 使用不同的面板作爲容器!
什麼類牽着你的形象嗎? `System.Windows.Controls.Image`? – vlad 2011-01-27 15:18:08
它是一個標準的Silverlight圖像控件,坐在網格單元格內的Canvas的子元件上 – descf 2011-01-27 16:28:16