You can do something like this:
XNode FindNode(string path, int line, int column) { XDocument doc = XDocument.Load(path, LoadOptions.SetLineInfo); var query = from node in doc.DescendantNodes() let lineInfo = (IXmlLineInfo)node where lineInfo.LineNumber == line && lineInfo.LinePosition <= column select node; return query.LastOrDefault(); }
source share