Ejemplo n.º 1
0
 public ReportItem Find(string uniqueName)
 {
     if (uniqueName != null && uniqueName.Length > 0)
     {
         if (uniqueName.Equals(base.UniqueName))
         {
             return(this);
         }
         char[] separator = new char[1]
         {
             'a'
         };
         string[] array = uniqueName.Split(separator);
         if (array != null && array.Length >= 2)
         {
             object obj = (this.m_pageSectionInstance != null) ? ((ISearchByUniqueName)this.m_pageSectionInstance) : ((ISearchByUniqueName)this.m_pageSectionDef);
             NonComputedUniqueNames nonComputedUniqueNames = null;
             int num = -1;
             for (int i = 1; i < array.Length; i++)
             {
                 IIndexInto indexInto = obj as IIndexInto;
                 if (indexInto == null)
                 {
                     obj = null;
                     break;
                 }
                 num = ReportItem.StringToInt(array[i]);
                 NonComputedUniqueNames nonComputedUniqueNames2 = null;
                 obj = indexInto.GetChildAt(num, out nonComputedUniqueNames2);
                 if (nonComputedUniqueNames == null)
                 {
                     nonComputedUniqueNames = nonComputedUniqueNames2;
                     continue;
                 }
                 if (nonComputedUniqueNames.ChildrenUniqueNames == null || num < 0 || num >= nonComputedUniqueNames.ChildrenUniqueNames.Length)
                 {
                     return(null);
                 }
                 nonComputedUniqueNames = nonComputedUniqueNames.ChildrenUniqueNames[num];
             }
             if (obj == null)
             {
                 return(null);
             }
             if (obj is AspNetCore.ReportingServices.ReportProcessing.ReportItem)
             {
                 AspNetCore.ReportingServices.ReportProcessing.ReportItem reportItemDef = (AspNetCore.ReportingServices.ReportProcessing.ReportItem)obj;
                 return(ReportItem.CreateItem(uniqueName, reportItemDef, null, base.RenderingContext, nonComputedUniqueNames));
             }
             ReportItemInstance reportItemInstance = (ReportItemInstance)obj;
             return(ReportItem.CreateItem(uniqueName, reportItemInstance.ReportItemDef, reportItemInstance, base.RenderingContext, nonComputedUniqueNames));
         }
         return(null);
     }
     return(null);
 }
Ejemplo n.º 2
0
 public ReportItem Find(string uniqueName)
 {
     if (uniqueName != null && uniqueName.Length > 0)
     {
         int num = ReportItem.StringToInt(uniqueName);
         if (num < 0)
         {
             return(null);
         }
         return(this.m_renderingContext.FindReportItemInBody(num));
     }
     return(null);
 }