投稿者 葉月  (社会人) 投稿日時 2009/12/12 10:51:40
>>>エラーがでてしまいます。
サンプルはユーザーコントロールになります。
ユーザーコントロール???
でしたら参考サイトで先に勉強しておくのをお勧めします。
http://msdn.microsoft.com/ja-jp/events/dd283314.aspx

>>>それにPictureBoxはなぜ8個配置する必要があるのでしょうか?
回答者のあにすさんが、
「出来るだけ元のコードを残して無理やり改修してみました」
と言っていますように、モルさんが理解しやすいようサンプルをできるだけ残して書いております。
PictureBoxかPanelが1つあれば、縮小や最大化はできます。

>>>画像の拡大/縮小
詳しくは「アスペクト比」で検索してみてください。
ざっくりと説明します。
①画像のサイズを求める。
②画像を描画させるコントロール(PictureBoxなど)のサイズを求める。
③画像と描画するコントロールの高さを比較→
 高さの場合は以下の計算式になります(画像の方が大きい場合は、以下の式になります)→
 高さの比率 = 画像の高さ / 描画するコントロールの高さ
④画像と描画するコントロールの幅を比較→
 幅の場合は以下の計算式になります(幅の方が大きい場合は、以下の式になります)→
 幅の比率 = 画像の幅 / 描画するコントロールの幅
⑤画像の方が大きかったらかけ算、描画するコントロールの方が大きかったら割り算します。
⑥余白を求めて÷2した位置で表示します。

計算式が多いので一見難しそうに見えますが、式は算数レベルです。
手順さえ理解してしまえば難しくありません。
.NETやJavaの場合は、イメージの再作成してくれるメソッドがあるので、メインになるのは上記の計算になります。

サンプルは私用優先のため書きません。
とりあえず、上記の計算式を使ってやってみてください。