private void showPage(XtraTabPage page, UserControl Xuser) { Xuser.BackColor = Color.Transparent; var panelE = new PanelEnhanced(); panelE.BackgroundImage = Properties.Resources.bg2; panelE.Dock = DockStyle.Fill; panelE.Controls.Add(Xuser); page.Controls.Add(panelE); xtraTabControl1.TabPages.Add(page); xtraTabControl1.SelectedTabPage.ResetBackColor(); xtraTabControl1.SelectedTabPage.BackColor = Color.Transparent; xtraTabControl1.SelectedTabPage = page; }
private void showPage(XtraTabPage page, System.Type type) { var panelE = new PanelEnhanced(); panelE.BackgroundImage = Properties.Resources.bg2; panelE.Dock = DockStyle.Fill; page.Controls.Add(panelE); cmd2 = new Xr.Common.Controls.OpaqueCommand(page); cmd2.ShowOpaqueLayer(0f); DoWorkAsync(100, (o) => { return(null); }, null, (data) => { var uc = (UserControl)Activator.CreateInstance(type); uc.BackColor = Color.Transparent; setUcUI(null, uc); panelE.Controls.Add(uc); cmd2.HideOpaqueLayer(); }); }
private void showPage(XtraTabPage page, System.Type type) { //使用一个有双缓存的panel做背景,避免背景图片闪烁 PanelEnhanced panelE = new PanelEnhanced(); panelE.BackgroundImage = Properties.Resources.bg2; panelE.Dock = DockStyle.Fill; page.Controls.Add(panelE); cmd2 = new Xr.Common.Controls.OpaqueCommand(page); cmd2.ShowOpaqueLayer(0f); this.DoWorkAsync(100, (o) => //耗时逻辑处理(此处不能操作UI控件,因为是在异步中) { return(null); }, null, (data) => //显示结果(此处用于对上面结果的处理,比如显示到界面上) { UserControl uc = (UserControl)Activator.CreateInstance(type); uc.BackColor = Color.Transparent; setUcUI(null, uc); panelE.Controls.Add(uc); cmd2.HideOpaqueLayer(); }); }