日期:2014-05-17  浏览次数:20758 次

如何实现在窗体显示前加载所有控件
或者加载完成所有控件之后在显示窗体也行

代码贴下:
private void Form1_Load(object sender, EventArgs e)
        {
            ClassLibrary1.MoveForm mf = new ClassLibrary1.MoveForm(this);
            mf.lab_move(lab_logo);
            mf.lab_move(lab_ID);
            mf.lab_move(lab_PWD);
            gradually();
        }

        public void gradually()
        {
            this.Location = new Point(this.Left, this.Top - 50);
            this.Opacity = 0;
            for (int i = 0; i < 50; i++)
            {
                this.Opacity += 0.02;
                this.Location = new Point(this.Left, this.Top + 1);
            }
        }

------解决方案--------------------

        public Form2()
        {
            InitializeComponent();
            this.Shown += new EventHandler(Form2_Shown);
        }

        void Form2_Shown(object sender, EventArgs e)
        {
            Application.DoEvents();//这个关键,
在Form2_Shown里面做您的移动......

        }