/// <summary> /// 综合访问不同的迭代器 /// </summary> /// <returns></returns> public IEnumerable <int> GetAll() { var result = new List <int>(); if ((ArrayData != null) && (ArrayData.Length != 0)) { result.AddRange(ArrayData); } if ((CheckList != null) || (CheckList.Count() != 0)) { result.AddRange(CheckList.Select(x => x.Value)); } if (Root != null) { result.AddRange(Root.DepthFirstEnumerator); } result.AddRange(Enum.GetValues(typeof(Color)).Cast <int>()); return(result.Count() == 0 ? null : result); }