コード例 #1
0
ファイル: StatisticsBlock.cs プロジェクト: wouterfennis/Cifra
        public void Write(ISpreadsheetWriter spreadsheetWriter)
        {
            spreadsheetWriter.CurrentPosition = StartPosition;

            var scoresStartPosition = new Point(StartOfStudentsColumn, AchievedScoresRow);
            var scoresEndPosition   = new Point(StartOfStudentsColumn + NumberOfStudents, AchievedScoresRow);

            spreadsheetWriter
            .SetFontBold(true)
            .Write("Gemiddelde aantal punten")
            .SetFontBold(false)
            .MoveRight()
            .PlaceStandardFormula(scoresStartPosition, scoresEndPosition, FormulaType.AVERAGE)
            .NewLine();

            var gradesStartPosition = new Point(StartOfStudentsColumn, GradesRow);
            var gradesEndPosition   = new Point(StartOfStudentsColumn + NumberOfStudents, GradesRow);

            spreadsheetWriter
            .SetFontBold(true)
            .Write("Gemiddelde cijfer")
            .SetFontBold(false)
            .MoveRight()
            .PlaceStandardFormula(gradesStartPosition, gradesEndPosition, FormulaType.AVERAGE);
        }
コード例 #2
0
        public void Write(ISpreadsheetWriter spreadsheetWriter)
        {
            spreadsheetWriter.CurrentPosition = StartPoint;
            spreadsheetWriter
            .SetFontBold(true)
            .SetBorder(BorderStyle.Double, BorderDirection.Bottom, Color.Black)
            .Write("Totaal")
            .SetFontBold(false);

            int columnsBetweenFirstPoint = ScoreTopPoint.X - spreadsheetWriter.CurrentPosition.X;

            for (int i = 0; i < columnsBetweenFirstPoint; i++)
            {
                spreadsheetWriter.MoveRight();
                spreadsheetWriter.Write(string.Empty);
            }

            const int maximumPointsColumn  = 1;
            int       numberOfScoreColumns = NumberOfStudents + maximumPointsColumn;

            for (int columnIndex = 0; columnIndex < numberOfScoreColumns; columnIndex++)
            {
                var startPosition         = new Point(spreadsheetWriter.CurrentPosition.X, ScoreTopPoint.Y);
                var lastQuestionRowOffset = 1;
                var endPosition           = new Point(spreadsheetWriter.CurrentPosition.X, spreadsheetWriter.CurrentPosition.Y - lastQuestionRowOffset);
                spreadsheetWriter
                .PlaceStandardFormula(startPosition, endPosition, FormulaType.SUM)
                .MoveRight();
            }
        }
コード例 #3
0
        public void Write(ISpreadsheetWriter spreadsheetWriter)
        {
            spreadsheetWriter.CurrentPosition = StartPosition;
            spreadsheetWriter
            .SetFontBold(true)
            .SetBorder(BorderStyle.Double, BorderDirection.Bottom, Color.Black)
            .Write("Cijfer")
            .SetFontBold(false);

            int columnsBetweenFirstPoint = ScoresStartColumn - spreadsheetWriter.CurrentPosition.X;

            for (int i = 0; i < columnsBetweenFirstPoint; i++)
            {
                spreadsheetWriter.MoveRight();
                spreadsheetWriter.Write(string.Empty);
            }

            ICellRange maximumScoreCell          = spreadsheetWriter.GetCellRange(MaximumScorePosition);
            ICellRange standardizationFactorCell = spreadsheetWriter.GetCellRange(StandardizationFactorPosition);
            ICellRange minimumGradeCell          = spreadsheetWriter.GetCellRange(MinimumGradePosition);

            const int maximumPointsColumn  = 1;
            int       numberOfScoreColumns = NumberOfStudents + maximumPointsColumn;

            spreadsheetWriter.SetFormat("0.0");
            for (int columnIndex = 0; columnIndex < numberOfScoreColumns; columnIndex++)
            {
                var        achievedScorePosition = new Point(spreadsheetWriter.CurrentPosition.X, AchievedScoresRow);
                ICellRange achievedScoreCell     = spreadsheetWriter.GetCellRange(achievedScorePosition);

                spreadsheetWriter
                .PlaceLessThanRule(5.5, Color.Red)
                .PlaceCustomFormula(SetupGradeFormula(achievedScoreCell,
                                                      maximumScoreCell,
                                                      standardizationFactorCell,
                                                      minimumGradeCell))
                .MoveRight();
            }
            spreadsheetWriter.ResetStyling();
        }
コード例 #4
0
        public void Write(ISpreadsheetWriter spreadsheetWriter)
        {
            spreadsheetWriter.CurrentPosition = StartPoint;
            spreadsheetWriter
            .SetFontBold(true)
            .Write("Configuratie");

            spreadsheetWriter
            .NewLine()
            .Write("Normering")
            .SetFontBold(false)
            .MoveRight()
            .Write(StandardizationFactor.Value);
            StandardizationfactorPosition = spreadsheetWriter.CurrentPosition;

            spreadsheetWriter
            .NewLine()
            .SetFontBold(true)
            .Write("Minimale cijfer")
            .SetFontBold(false)
            .MoveRight()
            .Write(MinimumGrade.Value);
            MinimumGradePosition = spreadsheetWriter.CurrentPosition;
        }