ShowOrHideColumnGroups ( Microsoft.Office.Interop.Excel.Workbook workbook, ColumnGroups columnGroups, Boolean show, Boolean updateUserSettings ) { Debug.Assert(workbook != null); foreach (ColumnGroups eColumnGroup in Enum.GetValues(typeof(ColumnGroups))) { String sColumnGroup = eColumnGroup.ToString(); if (eColumnGroup != ColumnGroups.All && (columnGroups & eColumnGroup) != 0 && sColumnGroup.IndexOf("DoNotHide") == -1 && sColumnGroup.IndexOf("InternalUse") == -1 ) { ShowOrHideColumnGroup(workbook, eColumnGroup, show); } } if (updateUserSettings) { ColumnGroupUserSettings oColumnGroupUserSettings = new ColumnGroupUserSettings(); ColumnGroups eColumnGroupsToShow = oColumnGroupUserSettings.ColumnGroupsToShow; if (show) { eColumnGroupsToShow |= columnGroups; } else { eColumnGroupsToShow &= ~columnGroups; } oColumnGroupUserSettings.ColumnGroupsToShow = eColumnGroupsToShow; oColumnGroupUserSettings.Save(); } }
ShowOrHideColumnGroups ( Microsoft.Office.Interop.Excel.Workbook workbook, ColumnGroups columnGroups, Boolean show, Boolean updateUserSettings ) { Debug.Assert(workbook != null); foreach ( ColumnGroups eColumnGroup in Enum.GetValues(typeof(ColumnGroups) ) ) { String sColumnGroup = eColumnGroup.ToString(); if (eColumnGroup != ColumnGroups.All && (columnGroups & eColumnGroup) != 0 && sColumnGroup.IndexOf("DoNotHide") == -1 && sColumnGroup.IndexOf("InternalUse") == -1 ) { ShowOrHideColumnGroup(workbook, eColumnGroup, show); } } if (updateUserSettings) { ColumnGroupUserSettings oColumnGroupUserSettings = new ColumnGroupUserSettings(); ColumnGroups eColumnGroupsToShow = oColumnGroupUserSettings.ColumnGroupsToShow; if (show) { eColumnGroupsToShow |= columnGroups; } else { eColumnGroupsToShow &= ~columnGroups; } oColumnGroupUserSettings.ColumnGroupsToShow = eColumnGroupsToShow; oColumnGroupUserSettings.Save(); } }
mnuShowColumnGroups_ItemsLoading ( object sender, RibbonControlEventArgs e ) { AssertValid(); ColumnGroupUserSettings oColumnGroupUserSettings = new ColumnGroupUserSettings(); ColumnGroups eColumnGroupsToShow = oColumnGroupUserSettings.ColumnGroupsToShow; // Note that the chkShowVisualAttributeColumnGroups RibbonCheckBox // controls the visibility of three column groups: // ColumnGroup.EdgeVisualAttributes, // ColumnGroup.VertexVisualAttributes, and // ColumnGroup.GroupVisualAttributes. chkShowVisualAttributeColumnGroups.Checked = oColumnGroupUserSettings.ShouldShowColumnGroup( ColumnGroups.EdgeVisualAttributes, eColumnGroupsToShow); // Note that the chkShowLabelColumnGroups RibbonCheckBox controls the // visibility of three column groups: ColumnGroup.EdgeLabels, // ColumnGroup.VertexLabels, and ColumnGroup.GroupLabels. chkShowLabelColumnGroups.Checked = oColumnGroupUserSettings.ShouldShowColumnGroup( ColumnGroups.EdgeLabels, eColumnGroupsToShow); // Note that the chkShowLayoutColumnGroups RibbonCheckBox controls the // visibility of two column groups: ColumnGroup.VertexLayout and // ColumnGroup.GroupLayout. chkShowLayoutColumnGroups.Checked = oColumnGroupUserSettings.ShouldShowColumnGroup( ColumnGroups.VertexLayout, eColumnGroupsToShow); // Note that the chkShowGraphMetricColumnGroups RibbonCheckBox // controls the visibility of four column groups: // ColumnGroup.EdgeGraphMetrics, ColumnGroup.VertexGraphMetrics, // ColumnGroup.GroupGraphMetrics, and // ColumnGroup.GroupEdgeGraphMetrics. chkShowGraphMetricColumnGroups.Checked = oColumnGroupUserSettings.ShouldShowColumnGroup( ColumnGroups.VertexGraphMetrics, eColumnGroupsToShow); // Note that the chkShowOtherColumnGroups RibbonCheckBox controls the // visibility of three column groups: ColumnGroup.EdgeOtherColumns, // ColumnGroup.VertexOtherColumns, and ColumnGroup.GroupOtherColumns. chkShowOtherColumnGroups.Checked = oColumnGroupUserSettings.ShouldShowColumnGroup( ColumnGroups.EdgeOtherColumns, eColumnGroupsToShow); // This is required to force the ItemsLoading event to fire the next // time the mnuShowColumnGroups menu is opened. this.RibbonUI.InvalidateControl(this.mnuShowColumnGroups.Name); }