/// <summary>
        /// Получаем хлебные крошки для карты сайта
        /// </summary>
        /// <param name="id">Идентификатор элемента карты сайта</param>
        /// <returns></returns>
        public override BreadCrumbSiteMap[] getSiteMapBreadCrumbs(Guid?id)
        {
            List <BreadCrumbSiteMap> breadCrumbList = new List <BreadCrumbSiteMap>();

            if (!id.Equals(null))
            {
                BreadCrumbSiteMap item = getSiteMapBreadCrumbItem((Guid)id);

                while (item != null)
                {
                    breadCrumbList.Add(item);
                    if (!item.ParentId.Equals(null))
                    {
                        item = getSiteMapBreadCrumbItem((Guid)item.ParentId);
                    }
                    else
                    {
                        item = null;
                    }
                }
            }

            breadCrumbList.Reverse();

            return(breadCrumbList != null?breadCrumbList.ToArray() : null);
        }
Beispiel #2
0
    private void DataBindBreadCrumbSiteMap(RadMenuItem currentItem)
    {
        List <RadMenuItem> breadCrumbPath = new List <RadMenuItem>();

        while (currentItem != null)
        {
            breadCrumbPath.Insert(0, currentItem);
            currentItem = currentItem.Owner as RadMenuItem;
        }
        BreadCrumbSiteMap.DataSource = breadCrumbPath;
        BreadCrumbSiteMap.DataBind();
    }