Smrf.NodeXL.ExcelTemplate.ColumnGroupManager.ShowOrHideColumnGroup C# (CSharp) Method

ShowOrHideColumnGroup() private static method

private static ShowOrHideColumnGroup ( Microsoft oWorkbook, ColumnGroups eColumnGroup, System.Boolean bShow ) : void
oWorkbook Microsoft
eColumnGroup ColumnGroups
bShow System.Boolean
return void
    ShowOrHideColumnGroup
    (
        Microsoft.Office.Interop.Excel.Workbook oWorkbook,
        ColumnGroups eColumnGroup,
        Boolean bShow
    )
    {
        Debug.Assert(oWorkbook != null);

        #if DEBUG

        // Verify that a single value in the ColumnGroup enumeration has been
        // specified.

        Double dLogColumnGroup = Math.Log( (Double)eColumnGroup, 2 );
        Debug.Assert( (Int32)dLogColumnGroup == dLogColumnGroup );

        #endif

        ListObject oTable;

        if ( TryGetColumnGroupTable(oWorkbook, eColumnGroup, out oTable) )
        {
            ExcelColumnHider.ShowOrHideColumns(oTable,
                GetColumnNames(oWorkbook, eColumnGroup), bShow);

            if (eColumnGroup == ColumnGroups.VertexOtherColumns)
            {
                // Hiding the subgraph image column doesn't hide the images in
                // the column.

                TableImagePopulator.ShowOrHideImagesInColumn(oWorkbook,
                    WorksheetNames.Vertices,
                    VertexTableColumnNames.SubgraphImage, bShow);
            }
        }
    }