请问:C# 中怎么把画在pictureBox控件上的图和文字一并存入文件中。
画图代码如下:
private void pictureBox2_Paint(object sender, System.Windows.Forms.PaintEventArgs e)
{
  Graphics g=e.Graphics;
  Image image=new Bitmap(@"C:\pad for one pitch_1.bmp");
  g.DrawImage(myBitmap,0,0,pictureBox2.Width,pictureBox2.Height);
  RectangleF rect=new RectangleF(0,180,376,90);
  g.DrawString("Wait for your solution,thanks!",new Font("Microsoft Sans Serif", 12),new SolidBrush(Color.Green),rect);
}问题:怎么把控件上的Graphics内容存入文件中。
    我试着把抽象类graphics对象转换成bitmap不成功在线等待大人的解答,不甚感激!!!!

解决方案 »

  1.   

    这样:
    System.Drawing.Bitmap bitmap = new System.Drawing.Bitmap(this.Width,this.Height);
    this.DrawToBitmap(bitmap, this.ClientRectangle);
    bitmap.Save(fileName);
      

  2.   

    ..谢谢先.
    Image.Save(fileName);只是把图片存起来了
    不过我现在不仅要存iamge,上面的文字也要存起来,也就是graphics内容
      

  3.   

    你可以把代码中的this换成你的PictureBox
      

  4.   

    可以参见如下完整点的代码:
    private void pictureBox1_Paint(object sender, PaintEventArgs e)
    {
    e.Graphics.DrawString("aaaa", this.pictureBox1.Font, SystemBrushes.ControlText, 0, 0);
    }private void pictureBox1_DoubleClick(object sender, EventArgs e)
    {
    Bitmap bit = new Bitmap(this.pictureBox1.Width, this.pictureBox1.Height);
    this.pictureBox1.DrawToBitmap(bit, this.pictureBox1.ClientRectangle);
    bit.Save("D:\\a.bmp");
    }
      

  5.   

    pictureBox没有DrawToBitmap这个方法呀....
    可能因为我用的是.net2003
      

  6.   

    hbxtlhx(平民百姓) 
    你用的是什么版本的?
      

  7.   

    有人在没?
    要是可以把graphics对象转换成bitmap就好了...
      

  8.   

    如果你是03的话,确实没有这个方法.
    不过你可以把你在画图的时候用到的Image来保存.可以把这个做成全局变量.
      

  9.   

    我是说,你可在pictureBox2_Paint事件里先建立一个Bitmap,然后用这个Bitmap建立一个Graphics,把图选画到这个Bitmap里再把这个图整个画到PictureBox2上,然后这个图可以用来保存到磁盘上.
      

  10.   

    bit.Save("D:\\a.bmp");
    没啥可说的
      

  11.   

    这个问题已经解决了 谢谢大家
    多谢hbxtlhx(平民百姓)