示例#1
0
        /// <summary>
        /// Initializes a new instance of the AdvPropertyGrid class.
        /// </summary>
        public AdvPropertyGrid()
        {
            _SystemText = new AdvPropertyGridLocalization();
            _SystemText.PropertyChanged += new PropertyChangedEventHandler(SystemTextPropertyChanged);

            _Appearance = new AdvPropertyGridAppearance();
            _Appearance.PropertyChanged += new PropertyChangedEventHandler(AppearancePropertyChanged);

            _PropertySettings = new PropertySettingsCollection(this);

            _Toolbar = CreateToolbar();
            _PropertyTree = CreatePropertyTree();
            _SuperTooltip = CreateSuperTooltip();
            _ExpandableSplitter = CreateExpandableSplitter();
            _HelpPanel = CreateHelpPanel();
            _ExpandableSplitter.ExpandableControl = _HelpPanel;

            this.Controls.Add(_PropertyTree);
            this.Controls.Add(_Toolbar);
            this.Controls.Add(_ExpandableSplitter);
            this.Controls.Add(_HelpPanel);
            _ExpandableSplitter.Visible = false;
            _HelpPanel.Visible = false;
        }
示例#2
0
        private void InitControl()
        {
            _BackgroundStyle.SetColorScheme(this.ColorScheme);
            _BackgroundStyle.StyleChanged += new EventHandler(this.VisualPropertyChanged);

            _ButtonCustom = new InputButtonSettings(this);
            _ButtonCustom2 = new InputButtonSettings(this);
            _ButtonClear = new InputButtonSettings(this);
            _ButtonDropDown = new InputButtonSettings(this);
            CreateButtonGroup();

            //_TextBox = new TextBoxX();
            //_TextBox.BorderStyle = BorderStyle.None;
            //_TextBox.TextChanged += new EventHandler(TextBoxTextChanged);
            //_TextBox.TextAlignChanged += new EventHandler(TextBoxTextAlignChanged);
            //_TextBox.SizeChanged += new EventHandler(TextBoxSizeChanged);
            //_TextBox.Visible=false;
            ////_TextBox.ModifiedChanged += new EventHandler(TextBoxModifiedChanged);
            //this.Controls.Add(_TextBox);

            // Init popup tree
            _AdvTree = new DevComponents.AdvTree.AdvTree();
#if (!TRIAL)
            _AdvTree.LicenseKey = "F962CEC7-CD8F-4911-A9E9-CAB39962FC1F";
#endif
            _AdvTree.BackgroundStyle.Reset();
            _AdvTree.BackgroundStyle.BackColor = SystemColors.Window;
            _AdvTree.BackgroundStyle.Border = eStyleBorderType.None;
            _AdvTree.ExpandButtonType = eExpandButtonType.Triangle;
            _AdvTree.DragDropEnabled = false;
            _AdvTree.HotTracking = true;
            _AdvTree.Indent = 6;
            _AdvTree.SelectionFocusAware = false;
            ElementStyle nodeStyle = new ElementStyle();
            nodeStyle.Name = "nodeElementStyle";
            nodeStyle.TextColor = System.Drawing.SystemColors.ControlText;
            _AdvTree.NodeStyle = nodeStyle;
            _AdvTree.PathSeparator = ";";
            _AdvTree.Styles.Add(nodeStyle);
            _AdvTree.AfterNodeSelect += new AdvTreeNodeEventHandler(TreeAfterNodeSelect);
            _AdvTree.BeforeNodeSelect += new AdvTreeNodeCancelEventHandler(TreeBeforeNodeSelect);
            _AdvTree.NodeMouseDown += new TreeNodeMouseEventHandler(TreeNodeMouseDown);

            this.DropDownControl = _AdvTree;
        }
示例#3
0
        private void OpenMultiColumnDropDown()
        {
            _PopupController = null;
            _MultiColumnDisplay = null;
            if (_PopupController == null)
            {
                _PopupController = new PopupHostController();
                _PopupController.Closed += PopupControllerClosed;
            }

            if (_MultiColumnDisplay == null)
            {
                _MultiColumnDisplay = CreateMultiColumnDisplayControl();               

                _DataChangeType = eDataChange.All;
            }
            if (IsDataChange(eDataChange.BindingContextChanged))
                _MultiColumnDisplay.BindingContext = this.BindingContext;
            if (_MultiColumnDisplay.DataSource != this.DataSource)
            {
                _DataChangeType = eDataChange.All;
            }

            if (IsDataChange(eDataChange.DataSourceChanged))
            {
                _MultiColumnDisplay.DataSource = this.DataSource;               
            }
            if (IsDataChange(eDataChange.DropDownColumnsChanged))
                _MultiColumnDisplay.DisplayMembers = _DropDownColumns;

            if (!_PopupController.PopupUserSize || !_PreservePopupSize)
            {
                _MultiColumnDisplay.Height = this.DropDownHeight;
                _MultiColumnDisplay.Width = this.DropDownWidth;
            }

            //tuyenhm
            if (this._MultiColumnDisplay != null)
            {
                if (this._MultiColumnDisplay.Columns.Count > 0)
                {
                    this._MultiColumnDisplay.Columns[0].Width.Absolute = _Col1Width;
                }
                if (this._MultiColumnDisplay.Columns.Count > 1)
                {
                    this._MultiColumnDisplay.Columns[1].Width.Absolute = _Col2Width;
                }
                if (this._MultiColumnDisplay.Columns.Count > 2)
                {
                    this._MultiColumnDisplay.Columns[2].Width.Absolute = _Col3Width;
                }
            }

            CancelEventArgs cancelArgs = new CancelEventArgs();
            OnBeforeMultiColumnPopupOpen(cancelArgs);
            if (cancelArgs.Cancel)
                return;

            Point location = PointToScreen(new Point(0, Height));

            ePopupResizeEdge resize = _EnablePopupResize ? ePopupResizeEdge.BottomRight : ePopupResizeEdge.None;
            _PopupController.Show(_MultiColumnDisplay, location.X, location.Y, Width, Height, resize);
            if (_MultiColumnDisplay.SelectedNode != null)
                _MultiColumnDisplay.SelectedNode.EnsureVisible();
            _DroppedDown = true;
            _MultiDropDownOpenedAtTime = DateTime.Now;
           
            _DataChangeType = eDataChange.None;
            base.OnDropDown(EventArgs.Empty);
        }