示例#1
0
        /// <summary>
        /// <see cref="PropertyMetadata.PropertyChangedCallback"/>
        /// </summary>
        /// <remarks>
        /// This method needs to be internal to be accessable from derived classes.
        /// </remarks>
        internal static void OnUserSizePropertyChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            DefinitionBase definition = (DefinitionBase)d;

            if (definition.InParentLogicalTree)
            {
                if (definition._sharedState != null)
                {
                    definition._sharedState.Invalidate();
                }
                else
                {
                    Grid parentGrid = (Grid)definition.Parent;

                    if (((GridLength)e.OldValue).GridUnitType != ((GridLength)e.NewValue).GridUnitType)
                    {
                        parentGrid.Invalidate();
                    }
                    else
                    {
                        parentGrid.InvalidateMeasure();
                    }
                }
            }
        }
示例#2
0
            /// <summary>
            /// Propogates invalidations for all registered definitions.
            /// Resets its own state.
            /// </summary>
            internal void Invalidate()
            {
                _userSizeValid = false;

                if (_broadcastInvalidation)
                {
                    for (int i = 0, count = _registry.Count; i < count; ++i)
                    {
                        Grid parentGrid = (Grid)(_registry[i].Parent);
                        parentGrid.Invalidate();
                    }
                    _broadcastInvalidation = false;
                }
            }
 // Token: 0x0600876A RID: 34666 RVA: 0x0024FA64 File Offset: 0x0024DC64
 internal void Invalidate()
 {
     this._userSizeValid = false;
     if (this._broadcastInvalidation)
     {
         int i     = 0;
         int count = this._registry.Count;
         while (i < count)
         {
             Grid grid = (Grid)this._registry[i].Parent;
             grid.Invalidate();
             i++;
         }
         this._broadcastInvalidation = false;
     }
 }