Example #1
0
 protected FrameworkElement GetItem(int childIndex, IItemProvider itemProvider, bool forceMeasure)
 {
     lock (Children.SyncRoot)
     {
         bool             newlyCreated;
         FrameworkElement item = itemProvider.GetOrCreateItem(childIndex, this, out newlyCreated);
         if (item == null)
         {
             return(null);
         }
         if (newlyCreated)
         {
             // VisualParent and item.Screen were set by the item provider
             item.SetElementState(ElementState.Preparing);
             if (_elementState == ElementState.Running)
             {
                 item.SetElementState(ElementState.Running);
             }
         }
         if (newlyCreated || forceMeasure)
         {
             SizeF childSize = Orientation == Orientation.Vertical ? new SizeF((float)ActualWidth, float.NaN) :
                               new SizeF(float.NaN, (float)ActualHeight);
             item.Measure(ref childSize);
         }
         return(item);
     }
 }
 protected FrameworkElement GetItem(int childIndex, IItemProvider itemProvider, bool forceMeasure)
 {
   lock (Children.SyncRoot)
   {
     bool newlyCreated;
     FrameworkElement item = itemProvider.GetOrCreateItem(childIndex, this, out newlyCreated);
     if (item == null)
       return null;
     if (newlyCreated)
     {
       // VisualParent and item.Screen were set by the item provider
       item.SetElementState(ElementState.Preparing);
       if (_elementState == ElementState.Running)
         item.SetElementState(ElementState.Running);
     }
     if (newlyCreated || forceMeasure)
     {
       SizeF childSize = Orientation == Orientation.Vertical ? new SizeF((float) ActualWidth, float.NaN) :
           new SizeF(float.NaN, (float) ActualHeight);
       item.Measure(ref childSize);
     }
     return item;
   }
 }