コード例 #1
0
        public bool UpdateValueCellTaskMatrix(int indexRow, int indexColumn, string cellValue)
        {
            string functionName = MethodInfo.GetCurrentMethod().Name;

            if (HaveErrorsState(functionName) || HaveErrorsInputData(functionName, newValue: cellValue) || HaveErrorsIndexs(functionName, indexRow, indexColumn))
            {
                return(false);
            }

            _model.task.SetCellMatrix(indexRow, indexColumn, Const.Scale(cellValue));
            double value = 1.0 / _model.task.GetCellMatrix(indexRow, indexColumn);

            _model.task.SetCellMatrix(indexColumn, indexRow, value);

            _view.UpdateValueCellTaskMatrix(indexColumn, indexRow, Const.Scale(_model.task.matrix[indexColumn, indexRow]));
            return(true);
        }
コード例 #2
0
        private DataTable MatrixToDataTable(MatrixTable matrix)
        {
            DataTable table = new DataTable();

            if (matrix == null)
            {
                return(table);
            }
            table.TableName = matrix?.name;
            matrix.fields.ForEach(field => table.Columns.Add(field));

            for (int i = 0; i < matrix.matrix.RowCount; i++)
            {
                for (int j = 0; j < matrix?.matrix.ColumnCount; j++)
                {
                    table.Rows.Add();
                    table.Rows[i][j] = Const.Scale(matrix.matrix[i, j]);
                }
            }
            return(table);
        }