ピクチャーボックスにスクロールバーをつけるにはパネルやユーザーコントロールのうえにピクチャーボックスを貼り付け、パネルのAutoScrollプロパティを trueにするとともにPictureBox1.SizeModeプロパティをPictureBoxSizeMode.AutoSizeに設定します。PictureBoxSizeMode.AutoSizeに設定することで大きな画像を表示するときはピクチャーボックスが大きくなるので、パネルのAutoScrollプロパティをtrueにしておくと自動的にスクロールバーが表示されます。

これだけでは面白くないので他の機能も追加します。ピクチャーボックスをドラッグするとその部分に枠を表示させます。そしてその部分をトリミングできるようにします。

ではコードをみてみましょう。

DoesDrawDragedRectangleプロパティとDragedRectangleColorプロパティを独自に追加しました。マウスがドラッグされているとき矩形を描画するか? その場合、どの色を表示するかを設定できあす。

またマウスでピクチャーボックスをクリックしたときやマウスボタンを離したとき、その上を移動したときにもイベントの処理ができるようにしました。

次にDragedRectangleクラスを示します。

それからイベントハンドラの引数になっているTrimmedBitmapArgsクラスを示します。

最後に上下左右の切り落とす部分を指定してトリミングされた画像を取得するための静的クラス TrimmedBitmap を示します。

次回はこれをつかってアプリをつくります。

ピクチャーボックスにスクロールバーをつけて拡大縮小表示もできるようにする

スクロールバー付きのピクチャーボックスを使ってアプリをつくる