private void toggleButton_ToggleStateChanged(object sender, StateChangedEventArgs args) { if (args.ToggleState == Telerik.WinControls.Enumerations.ToggleState.On) { RadAssociatedToggleButton toggleButton = sender as RadAssociatedToggleButton; for (int i = 0; i < this.panelBarOverFlow.Items.Count; i++) { RadAssociatedToggleButton button = this.panelBarOverFlow.Items[i] as RadAssociatedToggleButton; if (!button.Equals(toggleButton)) { button.ToggleState = Telerik.WinControls.Enumerations.ToggleState.Off; } } toggleButton.group.Selected = true; } }
private void InsertToggleButton(RadPanelBarGroupElement group) { RadAssociatedToggleButton toggleButton = new RadAssociatedToggleButton(group); int index = this.panelBar.Items.IndexOf(group); if (group == null) { return; } if (group.horizontalLayout == null) { return; } if (group.horizontalLayout == null) { return; } if (group.horizontalLayout.Children.Count == 0) { return; } Bitmap bmp = null; if ((group.horizontalLayout.Children[0] as RadPanelBarVisualElement).Image != null) { bmp = new Bitmap((group.horizontalLayout.Children[0] as RadPanelBarVisualElement).Image, 16, 16); } toggleButton.Image = bmp; if (toggleButton.Image == null) { toggleButton.Image = new Bitmap(16, 16); Assembly currentAssembly = Assembly.GetExecutingAssembly(); string[] s = currentAssembly.GetManifestResourceNames(); string p = ""; foreach (string str in s) { if (str.EndsWith("2Telerik.bmp")) { p = str; } } if (p != "") { toggleButton.Image = Image.FromStream(Telerik.WinControls.TelerikHelper.GetStreamFromResource(currentAssembly, p)); } } //set ToolTip text for toggle button if (group.ToolTipText != null && group.ToolTipText != String.Empty) { toggleButton.ToolTipText = group.ToolTipText; } else if (group.Caption != null && group.Caption != String.Empty) { toggleButton.ToolTipText = group.Caption; } int indx = this.panelBar.Items.Count - 1 - index; if (indx < this.panelBarOverFlow.Items.Count) { this.panelBarOverFlow.Items.Insert(indx, toggleButton); } else { this.panelBarOverFlow.Items.Add(toggleButton); } toggleButton.ToggleStateChanged += new StateChangedEventHandler(toggleButton_ToggleStateChanged); if (group.Selected) { toggleButton.ToggleState = Telerik.WinControls.Enumerations.ToggleState.On; } }