public void Run() { try { IAppHandler.StartBusy("Preparing controls"); if (!this.Visible) { this.Show(); } IAppHandler.SuspendDrawing(this); EditingReady = false; //setup data first before controls, since there are //controls which are dependent on data OnSetupData(); OnSetupControl(); } finally { IAppHandler.ResumeDrawing(this); EditingReady = true; IAppHandler.EndBusy("Preparing controls"); } }