System.Windows.Automation.TreeWalker.TreeIterator.GetPreviousDirectSibling C# (CSharp) Method

GetPreviousDirectSibling() private method

private GetPreviousDirectSibling ( AutomationElement element ) : AutomationElement
element AutomationElement
return AutomationElement
			private AutomationElement GetPreviousDirectSibling (AutomationElement element)
			{
				AutomationElement parent = TreeWalker.RawViewWalker.GetParent (element);
				AutomationElement prevSibling = null;

				if (parent == AutomationElement.RootElement)
					lock (TreeWalker.RawViewWalker.directChildrenLock) {
						int prevIndex = TreeWalker.RawViewWalker.directChildren.IndexOf (element) - 1;
						if (prevIndex > -1)
							prevSibling = TreeWalker.RawViewWalker.directChildren [prevIndex];
						else
							prevSibling = null;
					}
				else
					prevSibling = SourceManager.GetOrCreateAutomationElement (element.SourceElement.PreviousSibling);

				return prevSibling;
			}
			#endregion