2011-06-17 7 views
0

このような処理は機能しません。Silverlight 4でイメージのサイズを変更するには?

foreach (Image img in Canvas1.Children.OfType<Image>()) 
     { 
      double h = img.Height/2; 
      double w = img.Width/2; 
      img.Height = h; 
      img.Width = w; 
      img.UpdateLayout(); 
      Canvas1.UpdateLayout(); 
     } 

は、私はいくつかの種類変換クラスのようなか何か で画像に割り当てるのBitmapImageを変換する必要がありますか?

答えて

0

私は、画像のサイズを変更しテストし、それが私の仕事:あなたのコードで間違っている可能性があります

foreach (var item in _grid.Children.OfType<Image>()) 
{ 
    item.Width = 400; // Update calls are unnecessary 
} 

ことの一つは、あなたが最初にそれを設定せずにImage.Height/Widthにアクセスすることです。これらのプロパティが設定されていない場合は、AutoDouble.NaN)です。レイアウトシステムで計算された現在の値を取得する場合は、ActualHeight/Widthを使用します。

関連する問題