Smrf.NodeXL.ExcelTemplate.GraphMetricWriter.ActivateRelevantWorksheet C# (CSharp) Method

ActivateRelevantWorksheet() public method

public ActivateRelevantWorksheet ( IEnumerable graphMetricColumns, Microsoft workbook ) : void
graphMetricColumns IEnumerable
workbook Microsoft
return void
    ActivateRelevantWorksheet
    (
        IEnumerable<GraphMetricColumn> graphMetricColumns,
        Microsoft.Office.Interop.Excel.Workbook workbook
    )
    {
        Debug.Assert(graphMetricColumns != null);
        Debug.Assert(workbook != null);
        AssertValid();

        Boolean bEdgeMetricCalculated = false;
        Boolean bVertexMetricCalculated = false;
        Boolean bOverallMetricsCalculated = false;
        Boolean bGroupsCalculated = false;
        Boolean bGroupMetricCalculated = false;
        Boolean bWordMetricCalculated = false;
        Boolean bTopNByMetricCalculated = false;

        Boolean bShowGraphMetricColumnGroups = false;

        foreach (GraphMetricColumn oGraphMetricColumn in graphMetricColumns)
        {
            switch (oGraphMetricColumn.WorksheetName)
            {
                case WorksheetNames.Edges:

                    bEdgeMetricCalculated = true;
                    bShowGraphMetricColumnGroups = true;
                    break;

                case WorksheetNames.Vertices:

                    bVertexMetricCalculated = true;
                    bShowGraphMetricColumnGroups = true;
                    break;

                case WorksheetNames.Groups:

                    if (oGraphMetricColumn.ColumnName ==
                        GroupTableColumnNames.Name)
                    {
                        bGroupsCalculated = true;
                    }
                    else if (oGraphMetricColumn.ColumnName ==
                        GroupTableColumnNames.Vertices)
                    {
                        bGroupMetricCalculated = true;
                        bShowGraphMetricColumnGroups = true;
                    }

                    break;

                case WorksheetNames.OverallMetrics:

                    bOverallMetricsCalculated = true;
                    break;

                case WorksheetNames.WordCounts:
                case WorksheetNames.WordPairCounts:

                    bWordMetricCalculated = true;
                    break;

                case WorksheetNames.TopNByMetrics:

                    bTopNByMetricCalculated = true;
                    break;

                default:

                    break;
            }
        }

        if (bShowGraphMetricColumnGroups)
        {
            ColumnGroupManager.ShowOrHideColumnGroups(workbook,

                ColumnGroups.EdgeGraphMetrics |
                ColumnGroups.VertexGraphMetrics |
                ColumnGroups.GroupGraphMetrics |
                ColumnGroups.GroupEdgeGraphMetrics,

                true, true);
        }

        // The worksheet to activate should be the one corresponding to the
        // bottommost checked item in the GraphMetricsDialog.

        String sWorksheetNameToActivate = null;

        if (bTopNByMetricCalculated)
        {
            sWorksheetNameToActivate = WorksheetNames.TopNByMetrics;
        }
        else if (bWordMetricCalculated)
        {
            sWorksheetNameToActivate = WorksheetNames.WordCounts;
        }
        else if (bOverallMetricsCalculated)
        {
            sWorksheetNameToActivate = WorksheetNames.OverallMetrics;
        }
        else if (bGroupsCalculated || bGroupMetricCalculated)
        {
            sWorksheetNameToActivate = WorksheetNames.Groups;
        }
        else if (bEdgeMetricCalculated)
        {
            sWorksheetNameToActivate = WorksheetNames.Edges;
        }
        else if (bVertexMetricCalculated)
        {
            sWorksheetNameToActivate = WorksheetNames.Vertices;
        }

        Worksheet oWorksheetToActivate;

        if (
            sWorksheetNameToActivate != null
            &&
            ExcelUtil.TryGetWorksheet(workbook, sWorksheetNameToActivate,
                out oWorksheetToActivate)
            )
        {
            ExcelUtil.ActivateWorksheet(oWorksheetToActivate);
        }
    }

Usage Example

コード例 #1
0
        WriteGraphMetricsToWorkbook
        (
            Microsoft.Office.Interop.Excel.Workbook oWorkbook,
            GraphMetricColumn [] aoGraphMetricColumns
        )
        {
            Debug.Assert(oWorkbook != null);
            Debug.Assert(aoGraphMetricColumns != null);

            GraphMetricWriter oGraphMetricWriter = new GraphMetricWriter();

            oGraphMetricWriter.WriteGraphMetricColumnsToWorkbook(
                aoGraphMetricColumns, oWorkbook);

            oGraphMetricWriter.ActivateRelevantWorksheet(aoGraphMetricColumns,
                                                         oWorkbook);
        }
All Usage Examples Of Smrf.NodeXL.ExcelTemplate.GraphMetricWriter::ActivateRelevantWorksheet