Windows窗体真的很滞后

时间:2014-12-09 21:35:45

标签: c#

我有一个Windows窗体项目,可以在框架4.5.1上顺利运行 但是我有一个关于框架2.0的项目,即使我将目标框架更改为4.5.1

之后也是如此滞后

那么为什么一个项目很慢而另一个项目正常呢?

更新:

这里是Main From

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace DataBaseLab_Library_Project
{
    public partial class MainForm : Form
    {
        public MainForm()
        {
            InitializeComponent();
        }

    private void button5_Click(object sender, EventArgs e)
    {
        System.Windows.Forms.Application.Exit();
    }

    private void label1_Click(object sender, EventArgs e)
    {

    }

    private void button4_Click(object sender, EventArgs e)
    {
        MessageBox.Show(" ", "About US");
    }

    private void button1_Click(object sender, EventArgs e)
    {
        this.Close();

        Add AddForm = new Add();
        AddForm.Show();
    }

    private void button2_Click(object sender, EventArgs e)
    {
        this.Close();
        Search SearchForm = new Search();
        SearchForm.Show();
    }

    private void panel1_Paint(object sender, PaintEventArgs e)
    {

    }
}
}

这是它的设计

enter image description here

更新2:

Form" Add.cs"这不会滞后。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace DataBaseLab_Library_Project
{
    public partial class Add : Form
    {
        public Add()
        {
            InitializeComponent();
        }

        private void splitContainer1_Panel2_Paint(object sender, PaintEventArgs e)
        {

        }

        private void button1_Click(object sender, EventArgs e)
        {
            this.Close();
            AddBook AddBookForm = new AddBook();
            AddBookForm.Show();


        }

        private void button4_Click(object sender, EventArgs e)
        {
            this.Close();
            MainForm mainForm = new MainForm();
            mainForm.Show();

        }

        private void label3_Click(object sender, EventArgs e)
        {

        }

        private void publisherButt_Click(object sender, EventArgs e)
        {
            this.Close();
            AddPublishercs AddPublisherForm = new AddPublishercs();
            AddPublisherForm.Show();
        }

        private void authorButt_Click(object sender, EventArgs e)
        {
            //this.Close();
            //AddAuthor AddAuthorForm = new AddAuthor();
            //AddAuthorForm.Show();
        }

        private void Add_Load(object sender, EventArgs e)
        {

        }
    }
}

1 个答案:

答案 0 :(得分:0)

尝试删除panel1 paint eventhandler。在面板必须绘制自己时,这将被调用(甚至是空的),这在设计师环境中始终是。

删除此代码:

 private void panel1_Paint(object sender, PaintEventArgs e)
    {

    }

InitializeComponent()中也会有类似于此

的代码
this.panel1.Paint += new System.Windows.Forms.PaintEventHandler(this.panel1);

也删除它。清洁和重建解决方案。关闭所有设计师窗口。再试一次。