Here is a method to add an item to the quick launch in C# private void AddNodeToQuickLaunch(string linkName, string SiteToOpen, string pathtoPage) { try { using (SPWeb web = SPContext.Current.Site.OpenWeb(SiteToOpen)) { web.AllowUnsafeUpdates = true; SPNavigationNodeCollection nodes = web.Navigation.QuickLaunch; SPNavigationNode createNode = new SPNavigationNode(linkName, pathtoPage, true); foreach (SPNavigationNode node in nodes) { bool nodeExists = false; if (node.Title.Equals("Lists")) { foreach (SPNavigationNode child in node.Children) { if (child.Title == linkName) { nodeExists = true; } } if (!nodeExists) { node.Children.Add(createNode, node); } } } web.AllowUnsafeUpdates = false; } } catch (Exception ex) { throw ex; } }