コード例 #1
0
        private static SortableBindingList <VerifiedDatasetItem> GetVerifiedDatasetItems(
            [NotNull] QualityVerification qualityVerification,
            [NotNull] Predicate <QualityConditionVerification> includeConditionVerification,
            out double maximumTime)
        {
            var result = new SortableBindingList <VerifiedDatasetItem>();

            maximumTime = 0;
            foreach (
                QualityConditionVerification conditionVerification in
                qualityVerification.ConditionVerifications)
            {
                if (!includeConditionVerification(conditionVerification))
                {
                    continue;
                }

                var datasets = new SimpleSet <Dataset>();

                QualityCondition condition = conditionVerification.DisplayableCondition;

                foreach (Dataset dataset in condition.GetDatasetParameterValues())
                {
                    if (datasets.Contains(dataset))
                    {
                        continue;
                    }

                    datasets.Add(dataset);

                    VerifiedDatasetItem item = CreateVerifiedDatasetItem(
                        qualityVerification, dataset,
                        conditionVerification);

                    if (item.TotalTime > maximumTime)
                    {
                        maximumTime = item.TotalTime;
                    }

                    result.Add(item);
                }
            }

            return(result);
        }
コード例 #2
0
                protected override void Paint(
                    Graphics graphics, Rectangle clipBounds, Rectangle cellBounds, int rowIndex,
                    DataGridViewElementStates cellState, object value, object formattedValue,
                    string errorText, DataGridViewCellStyle cellStyle,
                    DataGridViewAdvancedBorderStyle advancedBorderStyle,
                    DataGridViewPaintParts paintParts)
                {
                    DataGridViewTimeColumn column = null;
                    VerifiedDatasetItem    item   = null;

                    if (DataGridView != null)
                    {
                        column = DataGridView.Columns[ColumnIndex] as DataGridViewTimeColumn;
                        item   = DataGridView.Rows[rowIndex].DataBoundItem as
                                 VerifiedDatasetItem;
                    }

                    using (Brush brush = new SolidBrush(cellStyle.BackColor))
                    {
                        graphics.FillRectangle(brush, cellBounds);
                    }

                    if (column == null || item == null)
                    {
                        return;
                    }

                    if (column.MaximumTime <= 0)
                    {
                        return;
                    }

                    double startTime = 0;
                    double factor    = (cellBounds.Width - column._margin - column._margin) /
                                       column.MaximumTime;

                    startTime = Draw(cellBounds.Top + 2, cellBounds.Height - 4,
                                     column._margin + cellBounds.Left, startTime,
                                     item.DataLoadTime, graphics, column._loadColor, factor);

                    Draw(cellBounds.Top + 2, cellBounds.Height - 4,
                         column._margin + cellBounds.Left, startTime,
                         item.ExecuteTime, graphics, column._execColor, factor);
                }