private void OnNewSelection(object sender, EventArgs e) { if (base.DesignMode) { ISelectionService selectionService = ActiveXHelper.GetSelectionService(this); if (selectionService != null) { if (!selectionService.GetComponentSelected(this)) { if (this.activeXEditMode != ActiveXHelper.ActiveXEditMode.None) { this.GetParentContainer().OnExitEditMode(this); this.SetEditMode(ActiveXHelper.ActiveXEditMode.None); } this.SetSelectionStyle(ActiveXHelper.SelectionStyle.Selected); this.RemoveSelectionHandler(); } else { PropertyDescriptor propertyDescriptor = TypeDescriptor.GetProperties(this)["SelectionStyle"]; if ((propertyDescriptor != null) && (propertyDescriptor.PropertyType == typeof(int))) { int selectionStyle = (int)propertyDescriptor.GetValue(this); if (((ActiveXHelper.SelectionStyle)selectionStyle) != this.selectionStyle) { propertyDescriptor.SetValue(this, this.selectionStyle); } } } } } }
private void AddSelectionHandler() { if (!this.GetActiveXHostState(ActiveXHelper.AddedSelectionHandler)) { this.SetActiveXHostState(ActiveXHelper.AddedSelectionHandler, true); ISelectionService selectionService = ActiveXHelper.GetSelectionService(this); if (selectionService != null) { selectionService.SelectionChanging += this.SelectionChangeHandler; } } }
private bool RemoveSelectionHandler() { bool addedSelectionHandler = this.GetActiveXHostState(ActiveXHelper.AddedSelectionHandler); if (addedSelectionHandler) { this.SetActiveXHostState(ActiveXHelper.AddedSelectionHandler, false); ISelectionService selectionService = ActiveXHelper.GetSelectionService(this); if (selectionService != null) { selectionService.SelectionChanging -= this.SelectionChangeHandler; } } return(addedSelectionHandler); }
private void SetSelectionStyle(ActiveXHelper.SelectionStyle selectionStyle) { if (base.DesignMode) { ISelectionService selectionService = ActiveXHelper.GetSelectionService(this); this.selectionStyle = selectionStyle; if ((selectionService != null) && selectionService.GetComponentSelected(this)) { PropertyDescriptor propertyDescriptor = TypeDescriptor.GetProperties(this)["SelectionStyle"]; if ((propertyDescriptor != null) && (propertyDescriptor.PropertyType == typeof(int))) { propertyDescriptor.SetValue(this, (int)selectionStyle); } } } }