/// <summary> /// Add the ability for any node in a list to get the head node of the list. /// </summary> /// <returns>The head.</returns> public BaseNode GetHead() { //If there is a previous node, recurse into it to get the head node. if (null != Prev) { return(Prev.GetHead()); } else { //If there is no prev node, this dude is the head return(this); } }