Я не вижу, SuspendLayout()
и ResumeLayout()
делают то, что вы просите
LockWindowsUpdate()
упомянутый moobaa делает свое дело. Однако LockWindowUpdate
работает только для одного окна за раз.
Вы также можете попробовать это:
using System;
using System.Windows.Forms;
using Microsoft.Win32;
using System.Runtime.InteropServices;
public partial class Form1 : Form
{
[DllImport("user32.dll")]
public static extern int SendMessage(IntPtr hWnd, Int32 wMsg, bool wParam, Int32 lParam);
private const int WM_SETREDRAW = 11;
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
SendMessage(this.Handle, WM_SETREDRAW, false, 0);
// Do your thingies here
SendMessage(this.Handle, WM_SETREDRAW, true, 0);
this.Refresh();
}
}