コード例 #1
0
        private void ItemsChanged(RadItemCollection changed, RadItem target, ItemsChangeOperation operation)
        {
            if (operation == ItemsChangeOperation.Inserted ||
                operation == ItemsChangeOperation.Set)
            {
                target.AngleTransform = GetRotationDegree(this.Orientation);
            }

            RadMenuItemBase menuItem = target as RadMenuItemBase;

            if (menuItem != null)
            {
                if (operation == ItemsChangeOperation.Inserted || operation == ItemsChangeOperation.Set)
                {
                    menuItem.Owner = this;
                    if (!this.IsDesignMode)
                    {
                        menuItem.ClickMode = ClickMode.Press;
                    }
                    menuItem.IsMainMenuItem = true;
                }
                else if (operation == ItemsChangeOperation.Removed)
                {
                    menuItem.Deselect();
                    menuItem.Owner = null;
                    if (menuItem.IsPopupShown)
                    {
                        menuItem.HideChildItems();
                    }
                }
            }
        }
コード例 #2
0
        protected override void OnItemDeselected(ItemSelectedEventArgs args)
        {
            base.OnItemDeselected(args);

            if (args.Item is RadMenuItemBase)
            {
                RadMenuItemBase item = args.Item as RadMenuItemBase;
                item.Selected = false;
                item.HideChildItems();
            }
        }
コード例 #3
0
        protected override void OnMouseMove(MouseEventArgs e)
        {
            RadMenuItemBase menuItem            = this.elementTree.GetElementAtPoint(e.Location) as RadMenuItemBase;
            RadMenuItemBase currentSelectedItem = this.GetSelectedItem() as RadMenuItemBase;

            if (!this.CanProcessItem(menuItem))
            {
                base.OnMouseMove(e);
                return;
            }

            if (currentSelectedItem != null &&
                !object.ReferenceEquals(currentSelectedItem, menuItem))
            {
                currentSelectedItem.Deselect();
                currentSelectedItem.HideChildItems();
            }

            this.childDropDownTimeout.Start();

            base.OnMouseMove(e);
        }
コード例 #4
0
        private void ItemsChanged(
            RadItemCollection changed,
            RadItem target,
            ItemsChangeOperation operation)
        {
            if (operation == ItemsChangeOperation.Inserted || operation == ItemsChangeOperation.Set)
            {
                int num = (int)target.SetDefaultValueOverride(RadElement.AngleTransformProperty, (object)this.GetRotationDegree(this.Orientation));
            }
            RadMenuItemBase radMenuItemBase = target as RadMenuItemBase;

            if (radMenuItemBase == null)
            {
                return;
            }
            switch (operation)
            {
            case ItemsChangeOperation.Inserted:
            case ItemsChangeOperation.Set:
                radMenuItemBase.Owner = (object)this;
                if (!this.IsDesignMode)
                {
                    radMenuItemBase.ClickMode = ClickMode.Press;
                }
                radMenuItemBase.IsMainMenuItem = true;
                break;

            case ItemsChangeOperation.Removed:
                radMenuItemBase.Deselect();
                radMenuItemBase.Owner = (object)null;
                if (!radMenuItemBase.IsPopupShown)
                {
                    break;
                }
                radMenuItemBase.HideChildItems();
                break;
            }
        }