| 
                ■No51445 (Hongliang さん) に返信 > もし RenderTransform に ScaleTransform を適用することで拡大しているのなら当然ですが。レンダリングの際のみ拡大するわけですから、親要素が子要素をレイアウトするときの考慮の対象外です。Width/Height を直接操作するか、LayoutTransform を使うかしないといけません。
  これ。WindowsForm の時の経験から必要なことだとは思っていたのですが、image.Width をすると値が入っていない(NaN)だったのでやらなくても良いのかと 勝手に思っていました(image の Width と Height を Auto にしたのが原因?)。
  >>ここも、拡大方法はBitmapScalingModeを使うことで指定できました。どこかの Q&A でWPFにはそういうプロパティはない。と書いてあったのを >>鵜呑みにしていました。 > ちなみに、NearestNeighbor は .NET 3.0 SP1 で追加されたメンバです。それまではスケーリングに最近傍補完を使う方法は(WriteableBitmap 使って自前で各ピクセルごとに拡大するようなのを除けば)ありませんでした。
  了解です。最初は無かった理由は、想像もつきませんが。。。
  ご想像通り、拡大をRenderTransformにScaleTransform 適用したのですが、結構、コード量も少ないし処理も(Core2Quad)高速でびっくりしました。 WindowsForm の時の苦労は何だったのか?と言いたい。
  ちょっと、WPF で遊んでみようという気になってきました。
  ありがとうございました。
  ----------------------------------------------------------- 参考:こんな感じで拡大を指定しています。 -----------------------------------------------------------
  			TransformGroup group = new TransformGroup(); 
  			group.Children.Add( new ScaleTransform() ); 			group.Children.Add( new TranslateTransform()) ;
  			// 拡大縮小 			ScaleTransform scale = (ScaleTransform)group.Children[0]; 			scale.ScaleX = 1.0; 			scale.ScaleY = 1.0;
  			// 平行移動 			TranslateTransform translate = (TranslateTransform)group.Children[1]; 			translate.X = 0; 			translate.Y = 0;
  			image.RenderTransform = group; 			/////////////////////////////////////////////////////////////
  			// 拡大方法をニアレストネイバーに設定 			RenderOptions.SetBitmapScalingMode( image, BitmapScalingMode.NearestNeighbor );
 
  |