public void ReleaseProgressObject(ProgressObject obj) { obj.Disable(); this.activeProgress.Remove(obj); this.poolProgress.Enqueue(obj); int idx = 0; foreach (var progress in activeProgress) { progress.SetPosition(GetPosition(idx)); ++idx; } this.ExpandBgObject(activeProgress.Count); }