public override void UpdateWorkUnits(DataRow row) { this.groupValues = this.GetValues(row); if (!string.IsNullOrEmpty(base.WorkUnitTextColumn)) { this.workUnitsTextList = (row[base.WorkUnitTextColumn] as IList); } if (this.groupValues != null && this.groupValues.Count > 0) { this.dataHandler.DataHandlers.Clear(); if (string.IsNullOrEmpty(this.CommandParam)) { WorkUnit[] array = new WorkUnit[this.groupValues.Count]; for (int i = 0; i < this.groupValues.Count; i++) { array[i] = new WorkUnit(this.GetDisplayText(i), this.GetDisplayIcon(row), this.groupValues[i]); } this.dataHandler.DataHandlers.Add(new BulkSaveDataHandler(array.DeepCopy(), this.CommandText)); } else { for (int j = 0; j < this.groupValues.Count; j++) { this.dataHandler.DataHandlers.Add(this.CreateDataHandler(this.CommandText, j, this.GetDisplayIcon(row))); } } this.dataHandler.UpdateWorkUnits(); foreach (WorkUnit workUnit in this.dataHandler.WorkUnits) { workUnit.Description = this.ModifiedParametersDescription; } this.dataHandler.ResetCancel(); } }