The Id property is used to uniquely identify a RibbonGroup within the XamRibbon. This is primarily needed when the RibbonGroup is added to the QuickAccessToolbar and is used as the TargetId of the QatPlaceholderTool that represents the group. If you want to programatically add the RibbonGroup to the QAT, then you must set this property to a string that is unique to all RibbonGroups across all RibbonTabItems within the Ribbon and use that as the TargetId of the QatPlaceholderTool that you add to the QuickAccessToolbar.
'Add RibbonGroup and set it properties Private Sub addRibbonGroupProperties() If xamRibbon.Tabs.Count < 1 Then Return End If Dim igTabItem As RibbonTabItem = xamRibbon.Tabs(0) 'Create RibbonGroup Dim ribbonGroup As RibbonGroup = getRibbonGroup(igTabItem, "RibbonGroup Members") 'RibbonGroup properties RibbonGroup.SetMaximumSize(ribbonGroup, RibbonToolSizingMode.ImageAndTextLarge) RibbonGroup.SetMinimumSize(ribbonGroup, RibbonToolSizingMode.ImageOnly) ribbonGroup.MaxWidth = 400 ribbonGroup.MinWidth = 200 ribbonGroup.Id = "mRibbonGroup" ribbonGroup.KeyTip = "RK1" ribbonGroup.IsOpen = True ribbonGroup.SmallImage = getImageSource("/images/icons/Ribbon/Paste_32x32.png") 'RibbonGroup events AddHandler ribbonGroup.Closed, AddressOf ribbonGroup_Closed AddHandler ribbonGroup.Opening, AddressOf ribbonGroup_Opening AddHandler ribbonGroup.Opened, AddressOf ribbonGroup_Opened 'add tools to RibbonGroup Dim btnToolAddToQAT As ButtonTool = addButtonToolToRibbonGroup(ribbonGroup, "AddToQAT", "btnAddToQAT", "/images/icons/Ribbon/New_Large.png") Dim btnToolRemoveFromQAT As ButtonTool = addButtonToolToRibbonGroup(ribbonGroup, "RemoveFromQAT", "btnToolRemoveFromQAT", "/images/icons/Ribbon/Open_Large.png") AddHandler btnToolAddToQAT.Click, AddressOf btnToolAddToQAT_Click 'Add DialogBoxLauncherTool ribbonGroup.DialogBoxLauncherTool = btnToolRemoveFromQAT 'Add ToolTip getRibbonScreenTip(btnToolRemoveFromQAT) End Sub Private Function getRibbonGroup(ByVal igTabItem As RibbonTabItem, ByVal ribbonGroupCaption As String) As RibbonGroup Dim ribbonGroup As New RibbonGroup() ribbonGroup.Caption = ribbonGroupCaption Dim toolHorizontalWrapPanel As New ToolHorizontalWrapPanel() ribbonGroup.Items.Add(toolHorizontalWrapPanel) igTabItem.RibbonGroups.Add(ribbonGroup) Return ribbonGroup End Function 'Add ButtonTool to RibbonGroup Private Function addButtonToolToRibbonGroup(ByVal igRibbongroup As RibbonGroup, ByVal caption As String, ByVal tagString As String, ByVal imageUriString As String) As ButtonTool Dim btnTool As ButtonTool = getButtonTool(caption, tagString, imageUriString) igRibbongroup.Items.Add(btnTool) Return btnTool End Function 'get ButtonTool Private Function getButtonTool(ByVal caption As String, ByVal tagString As String, ByVal imageUriString As String) As ButtonTool Dim btnTool As New ButtonTool() btnTool.Caption = caption btnTool.Tag = tagString btnTool.LargeImage = getImageSource(imageUriString) Return btnTool End Function 'Get Image Source Private Function getImageSource(ByVal uriString As String) As BitmapImage Dim bmpImage As New BitmapImage() bmpImage.BeginInit() bmpImage.UriSource = New Uri(uriString, UriKind.RelativeOrAbsolute) bmpImage.EndInit() Return bmpImage End Function
//Add RibbonGroup and set it properties private void addRibbonGroupProperties() { if (xamRibbon.Tabs.Count < 1) { return; } RibbonTabItem igTabItem = xamRibbon.Tabs[0]; //Create RibbonGroup RibbonGroup ribbonGroup = getRibbonGroup(igTabItem, "RibbonGroup Members"); //RibbonGroup properties RibbonGroup.SetMaximumSize(ribbonGroup, RibbonToolSizingMode.ImageAndTextLarge); RibbonGroup.SetMinimumSize(ribbonGroup, RibbonToolSizingMode.ImageOnly); ribbonGroup.MaxWidth = 400; ribbonGroup.MinWidth = 200; ribbonGroup.Id = "mRibbonGroup"; ribbonGroup.KeyTip = "RK1"; ribbonGroup.IsOpen = true; ribbonGroup.SmallImage = getImageSource("/images/icons/Ribbon/Paste_32x32.png"); //RibbonGroup events ribbonGroup.Closed += new RoutedEventHandler(ribbonGroup_Closed); ribbonGroup.Opening += new EventHandler<Infragistics.Windows.Ribbon.Events.RibbonGroupOpeningEventArgs>(ribbonGroup_Opening); ribbonGroup.Opened += new RoutedEventHandler(ribbonGroup_Opened); //add tools to RibbonGroup ButtonTool btnToolAddToQAT = addButtonToolToRibbonGroup(ribbonGroup, "AddToQAT", "btnAddToQAT", "/images/icons/Ribbon/New_Large.png"); ButtonTool btnToolRemoveFromQAT = addButtonToolToRibbonGroup(ribbonGroup, "RemoveFromQAT", "btnToolRemoveFromQAT", "/images/icons/Ribbon/Open_Large.png"); btnToolAddToQAT.Click += new RoutedEventHandler(btnToolAddToQAT_Click); //Add DialogBoxLauncherTool ribbonGroup.DialogBoxLauncherTool = btnToolRemoveFromQAT; //Add ToolTip getRibbonScreenTip(btnToolRemoveFromQAT); } private RibbonGroup getRibbonGroup(RibbonTabItem igTabItem, string ribbonGroupCaption) { RibbonGroup ribbonGroup = new RibbonGroup(); ribbonGroup.Caption = ribbonGroupCaption; ToolHorizontalWrapPanel toolHorizontalWrapPanel = new ToolHorizontalWrapPanel(); ribbonGroup.Items.Add(toolHorizontalWrapPanel); igTabItem.RibbonGroups.Add(ribbonGroup); return ribbonGroup; } //Add ButtonTool to RibbonGroup private ButtonTool addButtonToolToRibbonGroup(RibbonGroup igRibbongroup, string caption, string tagString, string imageUriString) { ButtonTool btnTool = getButtonTool(caption, tagString, imageUriString); igRibbongroup.Items.Add(btnTool); return btnTool; } //get ButtonTool private ButtonTool getButtonTool(string caption, string tagString, string imageUriString) { ButtonTool btnTool = new ButtonTool(); btnTool.Caption = caption; btnTool.Tag = tagString; btnTool.LargeImage = getImageSource(imageUriString); return btnTool; } //Get Image Source private BitmapImage getImageSource(string uriString) { BitmapImage bmpImage = new BitmapImage(); bmpImage.BeginInit(); bmpImage.UriSource = new Uri(uriString, UriKind.RelativeOrAbsolute); bmpImage.EndInit(); return bmpImage; }
Target Platforms: Windows 10, Windows 8.1, Windows 8, Windows 7, Windows Server 2012, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2