Boogaart.Silverlight.Behaviors.Popup.GetVerticalAlignmentsInOrderOfPreference C# (CSharp) Method

GetVerticalAlignmentsInOrderOfPreference() private static method

private static GetVerticalAlignmentsInOrderOfPreference ( PopupVerticalAlignment preferredVerticalAlignment ) : IEnumerable
preferredVerticalAlignment PopupVerticalAlignment
return IEnumerable
        private static IEnumerable<PopupVerticalAlignment> GetVerticalAlignmentsInOrderOfPreference(PopupVerticalAlignment preferredVerticalAlignment)
        {
            var startIndex = verticalAlignments.IndexOf(preferredVerticalAlignment);
            var index = startIndex;

            do
            {
                yield return verticalAlignments[index];

                ++index;

                if (index == verticalAlignments.Count)
                {
                    index = 0;
                }
            } while (index != startIndex);
        }