日期:2014-05-19  浏览次数:20889 次

C# 中控件随窗体变化而变化
public   class     AutoSize
            {
                  private   static   float   ObjOldWidth;
                  private   static   float   ObjOldHeight;
                  public   static   void     ResizeInit(Form   FName)
                  {          
                        ObjOldWidth   =   FName.Width;
                        ObjOldHeight   =   FName.Height;
                  }
                  public   static   void   ResizeForm(Form   FName)
                  {
                        float   ScaleX;
                        float   ScaleY;
                        ScaleY   =FName.Height/ObjOldHeight;
                        ScaleX   =FName.Width/ObjOldWidth;
                        foreach(Control   childControl   in   FName.Controls)
                        {
                              childControl.Scale(ScaleX,   ScaleY);
                       
                        }
                  }
            }        
写的一个类,但是窗体一旦最小化后,窗体里的控件就有变形现象,请各位版主和高手帮帮忙啊!

------解决方案--------------------
哎,这东西如果是WPF Window的话连代码都不用写的。

帮顶。
------解决方案--------------------
帮顶
------解决方案--------------------
要对控件重写Resize,RePaint
------解决方案--------------------
当窗体放大或缩小时,可以用Resize,RePaint对控件进行重绘.