Если я вас правильно понимаю, вы все равно хотите, чтобы родительский элемент отображался, вы просто не хотите, чтобы под ним появлялись дочерние элементы.
Если это так, попробуйте использовать событие OnMenuItemDataBound. Если вы добавите специальный тег к элементам, которые вы не хотите показывать как, то в вашем методе вы можете сделать что-то вроде следующего.
protected void Menu1_MenuItemDataBound(object sender, MenuEventArgs e)
{
SiteMapNode siteMapNode = (SiteMapNode)e.Item.DataItem;
string visable = siteMapNode["visable"];
if (!string.IsNullOrEmpty(visable) && !bool.Parse(visable))
e.Item.ChildItems.Clear();
}
Это удалит все дочерние заметки, когда меню связано с данными, но все равно покажет сам оригинальный элемент.