16

次のコードを使用して、PictureBox 内の画像をビットマップに変換しました。

bmp = (Bitmap)pictureBox2.Image;

しかし、私は結果を取得していbmp = nullます。誰かが私にこれを行う方法を教えてもらえますか?

4

3 に答える 3

18

私の理解によると、PictureBoxのImageプロパティが割り当てられていないため、型キャストでnullが返されます。

PictureBoxプロパティは、画像形式を自動的に変換します。Imageプロパティにツールチップが表示されている場合は、System.Drawing.Bitmapが表示されます。画像プロパティが正しく割り当てられていることを確認してください。

これをチェックしてください、それは私の側で働いています。

private void button1_Click(object sender, EventArgs e)
{
    var bmp = (Bitmap)pictureBox1.Image;
}

private void TestForm12_Load(object sender, EventArgs e)
{
    pictureBox1.Image = Image.FromFile("c:\\url.gif");
}

/// BitMapクラスの使用

 Bitmap bmp = new Bitmap(pictureBox2.Image);

実行中に直接pictureBox2.Imageビットマップにキャストでき、ビットマップクラスを使用してビットマップクラスオブジェクトに変換することもできます。

参照: ビットマップコンストラクター(画像)

ビットマップクラスを使用して、ここでより多くのオプションを見つけることができます

于 2012-05-18T11:24:03.940 に答える
7
Bitmap bitmap = new Bitmap(pictureBox2.Image)

http://msdn.microsoft.com/en-us/library/ts25csc8.aspx

于 2012-05-18T11:23:25.257 に答える
3

私はあなたがこれを探していると思います:

Bitmap bmp = new Bitmap(pictureBox2.Image)
于 2012-05-18T11:23:38.887 に答える