public void FillDataView(Assignment[] assgns = null, DataGridView dgv = null, bool sendToMain = true) { Assignment[] assignmentsToUse; DataGridView relevantDataGridView; relevantDataGridView = dgv is null ? DataGridView : DataGridViewCurved; relevantDataGridView.Rows.Clear(); if (assgns is null) { _schoolClass.LoadAssignments(); _assignments = _schoolClass.assignments; assignmentsToUse = _assignments; } else { assignmentsToUse = assgns; } //code has been unspaghettied if (assignmentsToUse is null) { return; } foreach (Main.DataRow dataRow in _main.DataRows) { dataRow.SetDataToEmpty(); } foreach (Assignment assgn in assignmentsToUse) { relevantDataGridView.Rows.Add(assgn.ToDataView(_schoolClass)); if (sendToMain) { _main.AssgnToDataRow(assgn); } } string arg1, arg2; bool arg3; (arg1, arg2, arg3) = _schoolClass.GetMeanGrade(_main.DataRows, assignmentsToUse); _main.DisplayMean(arg1, arg2, arg3); _main.CalculateGrade(); }