Пример #1
0
        public void LoadModule()
        {
            foreach (var item in rrvMain.Items)
            {
                bool         rtEtat = false;
                RadRibbonTab rt     = item as RadRibbonTab;

                foreach (var item1 in rt.Items)
                {
                    RadRibbonGroup pan = item1 as RadRibbonGroup;

                    foreach (var item2 in pan.Items)
                    {
                        RadRibbonButton btn = item2 as RadRibbonButton;

                        string tag = btn.Tag.ToString();
                        if (GlobalData.VerificationDroit(tag))
                        {
                            rt.Visibility  = System.Windows.Visibility.Visible;
                            pan.Visibility = System.Windows.Visibility.Visible;
                            btn.Visibility = System.Windows.Visibility.Visible;
                        }
                    }
                }
            }
        }
Пример #2
0
        private void InitializeRibbonGroup(RadRibbonGroup ribbonGroupControl)
        {
            var ribbonGroup = ribbonGroupControl.DataContext as CreatedRibbonGroup;

            var allRibbonGroups = GetAllRibbonGroups();
            var allRibbonItems  = GetAllRibbonItems();

            foreach (var innerRibbonGroup in allRibbonGroups.
                     Where(p => p.RibbonGroupMetaData.ParentGUID == ribbonGroup.RibbonGroupMetaData.GUID))
            {
                var icon = innerRibbonGroup.RibbonGroupMetaData.Icon;
                var text = LanguageService.FindResourceString(innerRibbonGroup.RibbonGroupMetaData.HeaderLanguageKey);

                var dropDownButton = new RadRibbonDropDownButton {
                    DataContext = innerRibbonGroup,
                    SmallImage  = !string.IsNullOrEmpty(icon) ?  new BitmapImage(new Uri(icon)):null,
                    Size        = ButtonSize.Large,
                    Text        = text
                };

                ///设定UI自动化测试相关属性;
                AutomationProperties.SetAutomationId(dropDownButton, innerRibbonGroup.RibbonGroupMetaData.GUID);
                AutomationProperties.SetName(dropDownButton, text);

                InitializeDropDownButton(dropDownButton);
                ribbonGroupControl.Items.Add(dropDownButton);
            }

            foreach (var ribbonItem in allRibbonItems.
                     Where(p => p.RibbonItemMetaData.GroupGUID == ribbonGroup.RibbonGroupMetaData.GUID))
            {
                if (ribbonItem.RibbonItem is IRibbonButtonItem buttonItem)
                {
                    var bitmapImage = !string.IsNullOrEmpty(buttonItem.Icon) ? new BitmapImage(new Uri(buttonItem.Icon, UriKind.RelativeOrAbsolute)) : null;
                    var text        = LanguageService.FindResourceString(buttonItem.HeaderLanguageKey);

                    var ribbonButton = new RadRibbonButton {
                        Command    = buttonItem.Command,
                        Text       = text,
                        LargeImage = bitmapImage,
                        SmallImage = bitmapImage,
                        Size       = ButtonSize.Large
                    };


                    ///设定UI自动化测试相关属性;
                    AutomationProperties.SetAutomationId(ribbonButton, ribbonItem.RibbonItemMetaData.GUID ?? string.Empty);
                    AutomationProperties.SetName(ribbonButton, text ?? string.Empty);

                    ribbonGroupControl.Items.Add(ribbonButton);
                }
                else if (ribbonItem.RibbonItem is IRibbonObjectItem objectItem)
                {
                    ribbonGroupControl.Items.Add(objectItem.UIObject);
                }
            }
        }
Пример #3
0
        public void InitRibbonGroups(ObservableCollection <RibbonPanelCustom> GroupData, ref RadRibbonTab tab)
        {
            ObservableCollection <RadRibbonGroup> ribbonGroup = new ObservableCollection <RadRibbonGroup>();

            foreach (RibbonPanelCustom group in GroupData)
            {
                RadRibbonGroup group_t = new RadRibbonGroup()
                {
                    Header = group.RibbonPanelSourceCustom.Title
                };
                InitRibbonItems(group.RibbonPanelSourceCustom.RibbonItemsCustom, ref group_t);
                tab.Items.Add(group_t);
            }
        }
Пример #4
0
        public RadRibbonGroup CreateRibbonGroup(XmlNode node)
        {
            String name      = (node.Attributes.GetNamedItem("Header") != null) ? node.Attributes.GetNamedItem("Name").Value : "";
            String title     = (node.Attributes.GetNamedItem("Header") != null) ? node.Attributes.GetNamedItem("Header").Value : "";
            String id        = (node.Attributes.GetNamedItem("Name") != null) ? node.Attributes.GetNamedItem("Name").Value : "";
            bool   IsEnabled = true;

            if (node.Attributes.GetNamedItem("IsEnabled") != null && node.Attributes.GetNamedItem("IsEnabled").Value == "false")
            {
                IsEnabled = false;
            }
            RadRibbonGroup radRibbonGroup = new RadRibbonGroup()
            {
                Name = name, Header = title, IsEnabled = IsEnabled
            };

            return(radRibbonGroup);
        }
Пример #5
0
 public void ReadXml(XmlNodeList nodeList)
 {
     foreach (XmlNode node in nodeList)
     {
         RadRibbonTab radRibbonTab = CreateRibbonTab(node);
         if (node.ChildNodes.Count > 0)
         {
             XmlNodeList ChildNode = node.ChildNodes;
             foreach (XmlNode childNode in ChildNode)
             {
                 RadRibbonGroup radRibbonGroup = CreateRibbonGroup(childNode);
                 if (childNode.ChildNodes.Count > 0)
                 {
                     XmlNodeList ChildChildNode = childNode.ChildNodes;
                     foreach (XmlNode childchildNode in ChildChildNode)
                     {
                         RadCollapsiblePanel radCollapsiblePanel = CreateRibbonPanel(childchildNode);
                         if (childchildNode.ChildNodes.Count > 0)
                         {
                             XmlNodeList ChildChildChildNode = childchildNode.ChildNodes;
                             foreach (XmlNode childchildchildNode in ChildChildChildNode)
                             {
                                 CreateRibbonItem(childchildchildNode, radCollapsiblePanel);
                             }
                         }
                         radRibbonGroup.Items.Add(radCollapsiblePanel);
                     }
                 }
                 radRibbonTab.Items.Add(radRibbonGroup);
                 //radRibbonTabs.Add(radRibbonGroup);
             }
         }
         radRibbonTabs.Add(radRibbonTab);
         //radRibbonView.Items.Add(radRibbonTab);
         //Parse(node, radRibbonView);
     }
     //panel.SetWPFControl(wrapPanel, "test");
 }
Пример #6
0
        private void InitializeRibbonTab(RadRibbonTab ribbonTabControl)
        {
            var ribbonTab         = ribbonTabControl.DataContext as RibbonTabDataContext;
            var ribbonGroupTuples = GetAllRibbonGroups();

            foreach (var createdRibbonGroup in ribbonGroupTuples.
                     Where(p => p.RibbonGroupMetaData.ParentGUID == ribbonTab.RibbonTabMetaData.GUID))
            {
                var header   = LanguageService.FindResourceString(createdRibbonGroup.RibbonGroupMetaData.HeaderLanguageKey);
                var groupBox = new RadRibbonGroup {
                    Header      = header,
                    DataContext = createdRibbonGroup
                };

                ///设定UI自动化测试相关属性;
                AutomationProperties.SetAutomationId(groupBox, createdRibbonGroup.RibbonGroupMetaData.GUID);
                AutomationProperties.SetName(groupBox, header);

                InitializeRibbonGroup(groupBox);

                ribbonTabControl.Items.Add(groupBox);
            }
        }
Пример #7
0
        public void ReadXml(XmlNodeList nodeList)
        {
            string path = Path.GetDirectoryName(Path.GetDirectoryName(System.IO.Directory.GetCurrentDirectory()));
            string temp = path + "\\res\\02_01-FileNew.ico";

            try
            {
                //ImageSource img = IconToImageSource(Properties.Resources._02_01_FileNew);
                ImageSource image = (ImageSource) new ImageSourceConverter().ConvertFromString(temp);
            }
            catch (FileNotFoundException ex)
            {
                MessageBox.Show(ex.Message);
            }

            string name      = "";
            string title     = "";
            string isEnabled = "";
            string id        = "";
            bool   IsEnabled = false;

            foreach (XmlNode node in nodeList)
            {
                name      = (node.Attributes.GetNamedItem("Header") != null) ? node.Attributes.GetNamedItem("Name").Value : "";
                title     = (node.Attributes.GetNamedItem("Header") != null) ? node.Attributes.GetNamedItem("Header").Value : "";
                id        = (node.Attributes.GetNamedItem("Name") != null) ? node.Attributes.GetNamedItem("Name").Value : "";
                isEnabled = (node.Attributes.GetNamedItem("IsEnabled") != null) ? node.Attributes.GetNamedItem("IsEnabled").Value : "true";
                IsEnabled = (isEnabled == "true") ? true : false;

                RadRibbonTab radRibbonTab = new RadRibbonTab()
                {
                    Name = name, Header = title, IsEnabled = IsEnabled
                };

                if (node.ChildNodes.Count > 0)
                {
                    XmlNodeList ChildNode = node.ChildNodes;
                    foreach (XmlNode childNode in ChildNode)
                    {
                        name      = (childNode.Attributes.GetNamedItem("Header") != null) ? childNode.Attributes.GetNamedItem("Name").Value : "";
                        title     = (childNode.Attributes.GetNamedItem("Header") != null) ? childNode.Attributes.GetNamedItem("Header").Value : "";
                        id        = (childNode.Attributes.GetNamedItem("Name") != null) ? childNode.Attributes.GetNamedItem("Name").Value : "";
                        isEnabled = (childNode.Attributes.GetNamedItem("IsEnabled") != null) ? childNode.Attributes.GetNamedItem("IsEnabled").Value : "true";
                        IsEnabled = (isEnabled == "true") ? true : false;
                        RadRibbonGroup radRibbonGroup = new RadRibbonGroup()
                        {
                            Name = name, Header = title, IsEnabled = IsEnabled
                        };
                        if (childNode.ChildNodes.Count > 0)
                        {
                            XmlNodeList ChildChildNode = childNode.ChildNodes;
                            foreach (XmlNode childchildNode in ChildChildNode)
                            {
                                name      = (childchildNode.Attributes.GetNamedItem("Name") != null) ? childchildNode.Attributes.GetNamedItem("Name").Value : "";
                                title     = (childchildNode.Attributes.GetNamedItem("Header") != null) ? childchildNode.Attributes.GetNamedItem("Header").Value : "";
                                id        = (childchildNode.Attributes.GetNamedItem("Name") != null) ? childchildNode.Attributes.GetNamedItem("Name").Value : "";
                                isEnabled = (childchildNode.Attributes.GetNamedItem("IsEnabled") != null) ? childchildNode.Attributes.GetNamedItem("IsEnabled").Value : "true";
                                IsEnabled = (isEnabled == "true") ? true : false;
                                RadCollapsiblePanel radCollapsiblePanel = new RadCollapsiblePanel()
                                {
                                    Name = name, IsEnabled = IsEnabled
                                };
                                if (childchildNode.ChildNodes.Count > 0)
                                {
                                    XmlNodeList ChildChildChildNode = childchildNode.ChildNodes;
                                    foreach (XmlNode childchildchildNode in ChildChildChildNode)
                                    {
                                        id = (childchildchildNode.Attributes.GetNamedItem("Name") != null) ? childchildchildNode.Attributes.GetNamedItem("Name").Value : "";
                                        String tooltip   = (childchildchildNode.Attributes.GetNamedItem("ToolTipContent") != null) ? childchildchildNode.Attributes.GetNamedItem("ToolTipContent").Value : "";
                                        String text      = (childchildchildNode.Attributes.GetNamedItem("Text") != null) ? childchildchildNode.Attributes.GetNamedItem("Text").Value : "";
                                        String imagePath = Path.GetDirectoryName(Path.GetDirectoryName(System.IO.Directory.GetCurrentDirectory())) + "\\res\\";
                                        //String externalImage = "true";
                                        String isVisible     = (childchildchildNode.Attributes.GetNamedItem("IsVisible") != null) ? childchildchildNode.Attributes.GetNamedItem("IsVisible").Value : "";
                                        String isInitialized = childchildchildNode.Attributes.GetNamedItem("IsInitialized").Value;
                                        String image         = (childchildchildNode.Attributes.GetNamedItem("Image") != null) ? childchildchildNode.Attributes.GetNamedItem("Image").Value : "";
                                        String largeImage    = (childchildchildNode.Attributes.GetNamedItem("LargeImage") != null) ? childchildchildNode.Attributes.GetNamedItem("LargeImage").Value : "";
                                        //String width = childchildchildNode.SelectSingleNode("Width").InnerText;
                                        //String height = node.SelectSingleNode("Height").InnerText;
                                        isEnabled = (childchildchildNode.Attributes.GetNamedItem("IsEnabled") != null) ? childchildchildNode.Attributes.GetNamedItem("IsEnabled").Value : "";
                                        String itemType = childchildchildNode.Name.ToString();
                                        //String size = childchildchildNode.SelectSingleNode("Size").InnerText;
                                        //String isAutoSize = childchildchildNode.SelectSingleNode("IsAutoSize").InnerText;
                                        ImageSource itemImg = (ImageSource) new ImageSourceConverter().ConvertFromString(imagePath + image);
                                        //string typeNode = childchildchildNode.NodeType.ToString();
                                        switch (itemType)
                                        {
                                        case "RadRibbonButton":
                                            radCollapsiblePanel.Children.Add(new RadRibbonButton()
                                            {
                                                SmallImage = itemImg, LargeImage = itemImg, Text = text, ToolTip = tooltip
                                            });
                                            break;

                                        case "RadRibbonToggleButton":
                                            radCollapsiblePanel.Children.Add(new RadRibbonToggleButton()
                                            {
                                                SmallImage = itemImg, LargeImage = itemImg, Text = text, ToolTip = tooltip
                                            });
                                            break;

                                        case "RadRibbonRadioButton":
                                            radCollapsiblePanel.Children.Add(new RadRibbonRadioButton()
                                            {
                                                SmallImage = itemImg, LargeImage = itemImg, Text = text, ToolTip = tooltip
                                            });
                                            break;

                                        case "RadRibbonDropDownButton":
                                            radCollapsiblePanel.Children.Add(new RadRibbonDropDownButton()
                                            {
                                                SmallImage = itemImg, LargeImage = itemImg, Text = text, ToolTip = tooltip
                                            });
                                            break;

                                        case "RadRibbonSplitButton":
                                            radCollapsiblePanel.Children.Add(new RadRibbonSplitButton()
                                            {
                                                SmallImage = itemImg, LargeImage = itemImg, Text = text, ToolTip = tooltip
                                            });
                                            // ERROR
                                            break;

                                        case "RadButton":
                                            radCollapsiblePanel.Children.Add(new RadButton()
                                            {
                                                Content = text, Name = name, ToolTip = tooltip
                                            });
                                            break;

                                        case "RadPathButton":
                                            radCollapsiblePanel.Children.Add(new RadPathButton()
                                            {
                                                Content = text, Name = name, ToolTip = tooltip
                                            });
                                            break;

                                        case "RadDropDownButton":
                                            radCollapsiblePanel.Children.Add(new RadDropDownButton()
                                            {
                                                Content = text, Name = name, ToolTip = tooltip
                                            });
                                            break;

                                        case "RadRadioButton":
                                            radCollapsiblePanel.Children.Add(new RadRadioButton()
                                            {
                                                Content = text, Name = name, ToolTip = tooltip
                                            });
                                            break;

                                        case "RadSplitButton":
                                            radCollapsiblePanel.Children.Add(new RadSplitButton()
                                            {
                                                Content = text, Name = name, ToolTip = tooltip
                                            });
                                            break;

                                        case "RadToggleButton":
                                            radCollapsiblePanel.Children.Add(new RadToggleButton()
                                            {
                                                Content = text, Name = name, ToolTip = tooltip
                                            });
                                            break;

                                        case "RadToggleSwitchButton":
                                            radCollapsiblePanel.Children.Add(new RadToggleSwitchButton()
                                            {
                                                Content = text, Name = name, ToolTip = tooltip
                                            });
                                            break;

                                        case "RadComboBox":
                                            radCollapsiblePanel.Children.Add(new RadComboBox()
                                            {
                                                Text = text,
                                            });
                                            break;
                                        }
                                    }
                                }
                                radRibbonGroup.Items.Add(radCollapsiblePanel);
                            }
                        }
                        radRibbonTab.Items.Add(radRibbonGroup);
                    }
                }
                radRibbonView.Items.Add(radRibbonTab);
                //Parse(node, radRibbonView);
            }
            //panel.SetWPFControl(wrapPanel, "test");
        }
Пример #8
0
        public void Parse(XmlNode Node, RadRibbonView radRibbonView)
        {
            string name      = "";
            string title     = "";
            string isEnabled = "";
            string id        = "";
            bool   IsEnabled = false;

            switch (Node.Name)
            {
            case "RadRibbonTab":
                name      = (Node.Attributes.GetNamedItem("Header") != null) ? Node.Attributes.GetNamedItem("Name").Value : "";
                title     = (Node.Attributes.GetNamedItem("Header") != null) ? Node.Attributes.GetNamedItem("Header").Value : "";
                id        = (Node.Attributes.GetNamedItem("Name") != null) ? Node.Attributes.GetNamedItem("Name").Value : "";
                isEnabled = (Node.Attributes.GetNamedItem("IsEnabled") != null) ? Node.Attributes.GetNamedItem("IsEnabled").Value : "true";
                IsEnabled = (isEnabled == "true") ? true : false;
                RadRibbonTab radRibbonTab = new RadRibbonTab()
                {
                    Name = name, Header = title, IsEnabled = IsEnabled
                };
                break;

            case "RadRibbonGroup":
                name      = (Node.Attributes.GetNamedItem("Header") != null) ? Node.Attributes.GetNamedItem("Name").Value : "";
                title     = (Node.Attributes.GetNamedItem("Header") != null) ? Node.Attributes.GetNamedItem("Header").Value : "";
                id        = (Node.Attributes.GetNamedItem("Name") != null) ? Node.Attributes.GetNamedItem("Name").Value : "";
                isEnabled = (Node.Attributes.GetNamedItem("IsEnabled") != null) ? Node.Attributes.GetNamedItem("IsEnabled").Value : "true";
                IsEnabled = (isEnabled == "true") ? true : false;
                RadRibbonGroup radRibbonGroup = new RadRibbonGroup()
                {
                    Name = name, Header = title, IsEnabled = IsEnabled
                };
                break;

            case "RadCollapsiblePanel":
                name      = (Node.Attributes.GetNamedItem("Header") != null) ? Node.Attributes.GetNamedItem("Name").Value : "";
                title     = (Node.Attributes.GetNamedItem("Header") != null) ? Node.Attributes.GetNamedItem("Header").Value : "";
                id        = (Node.Attributes.GetNamedItem("Name") != null) ? Node.Attributes.GetNamedItem("Name").Value : "";
                isEnabled = (Node.Attributes.GetNamedItem("IsEnabled") != null) ? Node.Attributes.GetNamedItem("IsEnabled").Value : "true";
                IsEnabled = (isEnabled == "true") ? true : false;
                RadCollapsiblePanel radCollapsiblePanel = new RadCollapsiblePanel()
                {
                    Name = name, IsEnabled = IsEnabled, Children = { }
                };
                break;

            default:
                id = Node.Attributes.GetNamedItem("Name").Value;
                String tooltip       = Node.Attributes.GetNamedItem("ToolTipContent").Value;
                String text          = Node.Attributes.GetNamedItem("Text").Value;
                String imagePath     = "";
                String externalImage = "true";
                String isVisible     = Node.Attributes.GetNamedItem("IsVisible").Value;
                String isInitialized = Node.Attributes.GetNamedItem("IsInitialized").Value;
                String image         = Node.Attributes.GetNamedItem("Image").Value;
                String largeImage    = Node.Attributes.GetNamedItem("LargeImage").Value;
                //String width = node.SelectSingleNode("Width").InnerText;
                //String height = node.SelectSingleNode("Height").InnerText;
                isEnabled = Node.Attributes.GetNamedItem("IsEnabled").Value;
                String itemType = Node.NodeType.ToString();
                //String size = node.SelectSingleNode("Size").InnerText;
                //String isAutoSize = node.SelectSingleNode("IsAutoSize").InnerText;
                break;
            }
        }
Пример #9
0
        //enum point {head };
        public void InitRibbonItems(ObservableCollection <RibbonItemCustom> ItemData, ref RadRibbonGroup group)
        {
            ObservableCollection <object> ribbonItems = new ObservableCollection <object>();
            StackPanel stackRow1 = new StackPanel()
            {
                Orientation = Orientation.Horizontal, VerticalAlignment = VerticalAlignment.Top
            };
            StackPanel stackRow2 = new StackPanel()
            {
                Orientation = Orientation.Horizontal, VerticalAlignment = VerticalAlignment.Top
            };
            int itemcount = ItemData.Count;

            if (itemcount <= 4)
            {
                group.Items.Add(LoopItemlist(ItemData, 0, itemcount));
            }
            else
            {
                StackPanel stack = new StackPanel()
                {
                    Orientation = Orientation.Vertical
                };
                stack.Children.Add(LoopItemlist(ItemData, 0, itemcount / 2));
                stack.Children.Add(LoopItemlist(ItemData, itemcount / 2, itemcount));
                group.Items.Add(stack);
            }
            //group.Items.Add(stackRow1);
        }
Пример #10
0
        private void RadRibbonGroup_LaunchDialog(object sender, Telerik.Windows.RadRoutedEventArgs e)
        {
            RadRibbonGroup group = (RadRibbonGroup)sender;

            this.activeSheetEditor.CommandDescriptors.ShowFormatCellsDialog.Command.Execute(group.Header);
        }
Пример #11
0
        public void BeginInit()
        {
            List <RadRibbonTab>   ribbonTabs   = new List <RadRibbonTab>();
            List <RadRibbonGroup> ribbonGroups = new List <RadRibbonGroup>();

            var temp = this.container.GetExports <IScreen>();

            foreach (var screen in this.container.GetExports <IScreen>())
            {
                var navigationItem = screen.Value as ICanRibbon;

                if (navigationItem != null && navigationItem.Tabs != null)
                {
                    foreach (var ribbonTab in navigationItem.Tabs)
                    {
                        if (ribbonTab.Title == null)
                        {
                            continue;
                        }
                        RadRibbonTab tab = ribbonTabs.FirstOrDefault(t => (string)t.Header == ribbonTab.Title) ?? new RadRibbonTab();
                        tab.IsSelected = true;
                        tab.Header     = ribbonTab.Title;


                        foreach (var ribbonGroup in ribbonTab.Groups)
                        {
                            RadRibbonGroup group = ribbonGroups.FirstOrDefault(g => (string)g.Header == ribbonGroup.Title) ?? new RadRibbonGroup();

                            group.Header = ribbonGroup.Title;
                            foreach (var ribbonButton in ribbonGroup.Buttons)
                            {
                                //var uriSource = new Uri(@"pack://application:,,,/ReferencedAssembly;/FreightAlliance.Shell/Resources/Images/plus.png");


                                var button = new RadRibbonButton()
                                {
                                    Text      = ribbonButton.Title,
                                    Width     = 80,
                                    Height    = 80,
                                    Command   = ribbonButton.Command,
                                    SplitText = true,
                                    Size      = ButtonSize.Large
                                };

                                if (ribbonButton.ImgPath != null)
                                {
                                    var uri    = new Uri(ribbonButton.ImgPath);
                                    var bitmap = new BitmapImage(uri);
                                    button.LargeImage = bitmap;
                                }
                                group.Items.Add(button);
                            }

                            if (!ribbonGroups.Contains(group))
                            {
                                tab.Items.Add(group);
                                ribbonGroups.Add(group);
                            }

                            if (!ribbonTabs.Contains(tab))
                            {
                                this.Tabs.Add(tab);
                                ribbonTabs.Add(tab);
                            }
                        }
                    }
                }
            }
            var radRibbonTab = new RadRibbonTab()
            {
                Header = Resources.TechServiceText
            };

            this.Tabs.Add(radRibbonTab);
            ribbonTabs.Add(radRibbonTab);
        }