private bool TryGetMatchingNavNode(SiteMapNode sn, out SPNavigationNode navNode) { navNode = null; int nodeId = -1; foreach (PropertyInfo pi in sn.GetType().GetProperties()) { if (pi.Name == "Id") { nodeId = int.Parse(pi.GetValue(sn, null).ToString()); break; } } navNode = appHelper.RecursiveFindNavNodeById(Web.Navigation.TopNavigationBar.Parent, nodeId); if (navNode == null) { navNode = appHelper.RecursiveFindNavNodeById(Web.Navigation.QuickLaunch.Parent, nodeId); } return(navNode != null); }