void CreateDesigner(bool New, string XmlCode) { ModUi.ResetEventHandlers(); //Create a new DesignSurface ModDesignSurface MDS = new ModDesignSurface(); MDS.SetUpSelectionService(); MDS.BeginLoad(typeof(Form)); IDH = (IDesignerHost)MDS.GetService(typeof(IDesignerHost)); try { IDH.RemoveService(typeof(ITypeDescriptorFilterService)); }catch {} try { IDH.RemoveService(typeof(IToolboxService)); }catch {} try { IDH.RemoveService(typeof(PropertyGrid)); }catch { } //Read XML and update the Form control if (!New) { ModCodeAndControlHolder Code = ModUiTools.XmlToCode(XmlCode, (Form)IDH.RootComponent); } //Panel P = (Panel)IDH.CreateComponent(typeof(Panel)); //P.Location = ModUiTools.GetLocationDefinition(20, 20); //P.Size = ModUiTools.GetSizeDefinition(100, 100); //Button B = (Button)IDH.CreateComponent(typeof(Button), "TestButton"); //B.Text = "123"; //P.Controls.Add(B); //P.Parent = (Form)IDH.RootComponent; try { this.BaseSplit.Panel2.Controls.RemoveAt(0); } catch { } Control C = MDS.View as Control; C.Parent = this.BaseSplit.Panel2; C.Dock = DockStyle.Fill; IDH.AddService(typeof(ITypeDescriptorFilterService), new CustomFilterService()); ModToolBox TB = new ModToolBox(); TB.Parent = this.ToolboxTab; TB.Dock = DockStyle.Fill; IDH.AddService(typeof(IToolboxService), TB); PropertyGrid PG = new PropertyGrid(); PG.Parent = this.PropertiesPropertySubTab; PG.Dock = DockStyle.Fill; IDH.AddService(typeof(PropertyGrid), PG); // Use ComponentChangeService to announce changing of the // Form's Controls collection */ IComponentChangeService ICC = (IComponentChangeService)IDH.GetService(typeof(IComponentChangeService)); ICC.OnComponentChanging(IDH.RootComponent, TypeDescriptor.GetProperties(IDH.RootComponent)["Controls"]); }
void CreateDesigner(bool New, string XmlCode) { ModUi.ResetEventHandlers(); //Create a new DesignSurface ModDesignSurface MDS = new ModDesignSurface(); MDS.SetUpSelectionService(); MDS.BeginLoad(typeof(Form)); IDH = (IDesignerHost)MDS.GetService(typeof(IDesignerHost)); try { IDH.RemoveService(typeof(ITypeDescriptorFilterService)); }catch{} try { IDH.RemoveService(typeof(IToolboxService)); }catch{} try { IDH.RemoveService(typeof(PropertyGrid)); }catch { } //Read XML and update the Form control if (!New) { ModCodeAndControlHolder Code = ModUiTools.XmlToCode(XmlCode, (Form)IDH.RootComponent); } //Panel P = (Panel)IDH.CreateComponent(typeof(Panel)); //P.Location = ModUiTools.GetLocationDefinition(20, 20); //P.Size = ModUiTools.GetSizeDefinition(100, 100); //Button B = (Button)IDH.CreateComponent(typeof(Button), "TestButton"); //B.Text = "123"; //P.Controls.Add(B); //P.Parent = (Form)IDH.RootComponent; try { this.BaseSplit.Panel2.Controls.RemoveAt(0); } catch { } Control C = MDS.View as Control; C.Parent = this.BaseSplit.Panel2; C.Dock = DockStyle.Fill; IDH.AddService(typeof(ITypeDescriptorFilterService), new CustomFilterService()); ModToolBox TB = new ModToolBox(); TB.Parent = this.ToolboxTab; TB.Dock = DockStyle.Fill; IDH.AddService(typeof(IToolboxService), TB); PropertyGrid PG = new PropertyGrid(); PG.Parent = this.PropertiesPropertySubTab; PG.Dock = DockStyle.Fill; IDH.AddService(typeof(PropertyGrid), PG); // Use ComponentChangeService to announce changing of the // Form's Controls collection */ IComponentChangeService ICC = (IComponentChangeService)IDH.GetService(typeof(IComponentChangeService)); ICC.OnComponentChanging(IDH.RootComponent, TypeDescriptor.GetProperties(IDH.RootComponent)["Controls"]); }