示例#1
0
        private void AddDataListReportArea(int entityID, string title, DP_SearchRepository searchRepository, bool initialSearchShouldBeIncluded, RelationshipDTO causingRelationship = null, EntityRelationshipTailDTO causingRelationshipTail = null)
        {
            var dataListReportArea = new DataListReportArea();

            dataListReportArea.InitialSearchShouldBeIncluded   = initialSearchShouldBeIncluded;
            dataListReportArea.RelatedDataReportArearequested += FirstDataListReportArea_RelatedDataListReportArearequested;
            dataListReportArea.DataItemsSearchedByUser        += DataListReportArea_DataItemsSearchedByUser;
            var firstInit = new DataListReportAreaInitializer();

            firstInit.SearchRepository        = searchRepository;
            firstInit.EntitiyID               = entityID;
            firstInit.Title                   = title;
            firstInit.CausingRelationship     = causingRelationship;
            firstInit.CausingRelationshipTail = causingRelationshipTail;
            dataListReportArea.SetAreaInitializer(firstInit);
            View.AddDataListReportArea(dataListReportArea.View);

            if (CurrentDataListReportArea == null)
            {
                CurrentDataListReportArea = dataListReportArea;
                DataListReportAreas.Add(dataListReportArea);
            }
            else
            {
                var currentIndex = DataListReportAreas.IndexOf(CurrentDataListReportArea);
                DataListReportAreas.Insert(currentIndex + 1, dataListReportArea);
                CurrentDataListReportArea = dataListReportArea;
            }
            SetLinks();
        }
示例#2
0
        private void SetLinks()
        {
            var lastindex = DataListReportAreas.IndexOf(CurrentDataListReportArea);

            if (lastindex != -1)
            {
                List <I_DataListReportArea> listRemove = new List <I_DataListReportArea>();
                var index = 0;
                foreach (var item in DataListReportAreas)
                {
                    if (index > lastindex)
                    {
                        listRemove.Add(item);
                    }
                    index++;
                }
                foreach (var item in listRemove)
                {
                    DataListReportAreas.Remove(item);
                }
            }
            List <DataReportLink> links = new List <DataReportLink>();

            foreach (var item in DataListReportAreas)
            {
                DataReportLink link = new DataReportLink();
                link.Title = item.AreaInitializer.Title.ToString();
                //link.Tooltip item.AreaInitializer
                link.DataReportLinkClicked += (sender, e) => Link_DataListReportLinkClicked(sender, e, item);
                links.Add(link);
            }
            View.ShowLinks(links);
        }