Updated code so all layouts return an new array with their Items IEnumerable to prevent exceptions due to modifications when foreaching through them.  Also did the same type of code change to the UIControlManager's UpdateDependencies to prevent the same type of exceptions.