//- ctor public UDesigner() { InitializeComponent(); DesignSurfaceManager = new DesignUIMgr(); DesignSurfaceManager.PropertyGridHost.Parent = this.splitterpDesigner.Panel2; CtrlToolbox = null; this.Dock = DockStyle.Fill; }
//- ctor public PropertyGridHost(DesignUIMgr surfaceManager) { const string _signature_ = _name + @"::ctor()"; InitializeComponent(); this.Dock = DockStyle.Fill; //- the surface manager strictly tied with PropertyGridHost if (null == surfaceManager) { throw new ArgumentNullException("surfaceManager", _signature_ + " - Exception: invalid argument (null)!"); } SurfaceManager = surfaceManager; pgrdPropertyGrid.ToolbarVisible = true; pgrdPropertyGrid.HelpVisible = true; pgrdPropertyGrid.PropertyTabs.AddTabType(typeof(EventsTab)); //- the ComboBox is an OBSERVER of PropertyGridHost event: SelectedObjectsChanged //- everytime someone select a new object inside the PropertyGridHost //- | //- +---> the event PropertyGridHost.SelectedObjectsChanged is fired //- | //- the ReloadComboBox() method is called <------------+ //- //- //- //- pgrdPropertyGrid.SelectedObjectsChanged += (object sender, System.EventArgs e) => { ReloadComboBox(); }; //- the PropertyGridHost is an OBSERVER of ComboBox event: SelectedIndexChanged //- everytime someone select a new object inside the ComboBox //- | //- +---> the event ComboBox.SelectedIndexChanged is fired //- | //- the OrientPropertyGridTowardsObject() method is called <------------+ //- //- pgrdComboBox.SelectedIndexChanged += (object sender, System.EventArgs e) => { if (_bSuppressEvents) { return; } OrientPropertyGridTowardsObject(); }; }