窗体的背景图片拉伸可以做到,我采用同样的方法对控件操作,可是不行。
对于控件的背景图片的拉伸怎么做呢,各位兄弟,指点指点。

解决方案 »

  1.   

    style属性不行,还有哪位老兄能够给点建议啊~~
      

  2.   

    关注!
    帮你顶,我也想知道这个问题================================================================
    此帖通过csdn小助手回复。小助手只加载最核心数据显示更快流量更小。
    下载地址:http://qqwwee.com/csdn.rar
    这个软件真的很好,推荐大家使用!也可以给我发邮件
    [email protected] 声明我和作者素不相识。
    ================================================================
      

  3.   

    picturebox可以拉伸,panel就不清楚了
    panel有image属性吗,如果有你拉到这里面试试
      

  4.   

    backgroundimage属性大部分的控件都是有的,
    如果我的控件较大,而图片太小,那显示出来不是很难看吗?
    如果做到拉伸图片显示呢?那就好了。
    如果能做到这一点,还可以不用考虑显示器的分辨率啊字体大小啊所带来的影响了。那些高手都跑哪去啦???那些星星呢?
    出来帮帮忙好吗?
      

  5.   

    处理图片和背景图片两回事吧,
    除非在控件里添加处理图片这一部分,如某一控件设置其backgroundimage时,自动对该图片处理成拉伸显示在控件上,
    否则没用。如果这样的话,那就要改动控件了,这肯定不是好方法。请问高手们~对于这个问题有什么好一点的方法呢?
      

  6.   

    背景图是如何画出来的?你可以用Reflector看一下
    在Control的方法:
    internal void PaintBackground(PaintEventArgs e, Rectangle rectangle)
    中有这么一段:            TextureBrush brush1 = new TextureBrush(this.BackgroundImage, WrapMode.Tile);
                try
                {
                      Matrix matrix1 = brush1.Transform;
                      matrix1.Translate((float) this.DisplayRectangle.X, (float) this.DisplayRectangle.Y);
                      brush1.Transform = matrix1;
                      e.Graphics.FillRectangle(brush1, rectangle);
                      return;
                }
                finally
                {
                      brush1.Dispose();
                }其中WrapMode决定了画的方式,不过没有拉伸这个选项所以你必须自己处理,重写OnPaint,或者响应Paint事件
    直接用Graphics.DrawImage画就可以了
    protected override void OnPaint(PaintEventArgs pe)
    {
          if (this.image != null)
          {
                pe.Graphics.DrawImage(this.image, this.Rectangle);
          }
          base.OnPaint(pe);
    }
     
      

  7.   

    re:Jim3(Jim) 
    不行啊 ,兄弟,我试了没反应,我是设置backgroundimage的拉伸还是平铺的,不好看啊====PEKINGLIU====
      

  8.   

    需要自定义绘制:
    yourForm_OnLoad(...)
    {
    Bitmap m_Bitmap = new Bitmap(this.ClientRectangle.Width, this.ClientRectangle.Height);
    Graphics g = Graphics.FromImage(m_Bitmap);
    g.DrawImage(yourImage, this.ClientRectangle, new Rectangle(0, 0, yourImage.Width, yourImage.Height), GraphicsUnit.Pixel);
    }yourControl_OnPaint(...)
    {
    Graphics g = yourControl.CreateGraphics();
    g.DrawImage(m_Bitmap);
    g.Dispose();
    }