public object Clone() { ProgressBarGroup newGroup = new ProgressBarGroup(); newGroup._progressRangeStart = _progressRangeStart; newGroup._progressRangeEnd = _progressRangeEnd; foreach (KeyValuePair <ProgressLinkedStep, int> position in _stepPositions) { newGroup._stepPositions.Add(position.Key, position.Value); } if (ProgressChanged != null) { newGroup.ProgressChanged = (ProgressEventHandler)ProgressChanged.Clone(); } newGroup._numPositions = newGroup._stepPositions.Count; return(newGroup); }