コード例 #1
0
        // Token: 0x06004DCE RID: 19918 RVA: 0x0015EE20 File Offset: 0x0015D020
        private bool SetupDefinitionsToResize()
        {
            int num = (int)base.GetValue((this._resizeData.ResizeDirection == GridResizeDirection.Columns) ? Grid.ColumnSpanProperty : Grid.RowSpanProperty);

            if (num == 1)
            {
                int num2 = (int)base.GetValue((this._resizeData.ResizeDirection == GridResizeDirection.Columns) ? Grid.ColumnProperty : Grid.RowProperty);
                GridResizeBehavior resizeBehavior = this._resizeData.ResizeBehavior;
                int num3;
                int num4;
                if (resizeBehavior != GridResizeBehavior.CurrentAndNext)
                {
                    if (resizeBehavior == GridResizeBehavior.PreviousAndCurrent)
                    {
                        num3 = num2 - 1;
                        num4 = num2;
                    }
                    else
                    {
                        num3 = num2 - 1;
                        num4 = num2 + 1;
                    }
                }
                else
                {
                    num3 = num2;
                    num4 = num2 + 1;
                }
                int num5 = (this._resizeData.ResizeDirection == GridResizeDirection.Columns) ? this._resizeData.Grid.ColumnDefinitions.Count : this._resizeData.Grid.RowDefinitions.Count;
                if (num3 >= 0 && num4 < num5)
                {
                    this._resizeData.SplitterIndex                   = num2;
                    this._resizeData.Definition1Index                = num3;
                    this._resizeData.Definition1                     = GridSplitter.GetGridDefinition(this._resizeData.Grid, num3, this._resizeData.ResizeDirection);
                    this._resizeData.OriginalDefinition1Length       = this._resizeData.Definition1.UserSizeValueCache;
                    this._resizeData.OriginalDefinition1ActualLength = this.GetActualLength(this._resizeData.Definition1);
                    this._resizeData.Definition2Index                = num4;
                    this._resizeData.Definition2                     = GridSplitter.GetGridDefinition(this._resizeData.Grid, num4, this._resizeData.ResizeDirection);
                    this._resizeData.OriginalDefinition2Length       = this._resizeData.Definition2.UserSizeValueCache;
                    this._resizeData.OriginalDefinition2ActualLength = this.GetActualLength(this._resizeData.Definition2);
                    bool flag  = GridSplitter.IsStar(this._resizeData.Definition1);
                    bool flag2 = GridSplitter.IsStar(this._resizeData.Definition2);
                    if (flag && flag2)
                    {
                        this._resizeData.SplitBehavior = GridSplitter.SplitBehavior.Split;
                    }
                    else
                    {
                        this._resizeData.SplitBehavior = ((!flag) ? GridSplitter.SplitBehavior.Resize1 : GridSplitter.SplitBehavior.Resize2);
                    }
                    return(true);
                }
            }
            return(false);
        }
コード例 #2
0
 // Token: 0x06004DDE RID: 19934 RVA: 0x0015F510 File Offset: 0x0015D710
 private void SetLengths(double definition1Pixels, double definition2Pixels)
 {
     if (this._resizeData.SplitBehavior == GridSplitter.SplitBehavior.Split)
     {
         IEnumerable enumerable2;
         if (this._resizeData.ResizeDirection != GridResizeDirection.Columns)
         {
             IEnumerable enumerable = this._resizeData.Grid.RowDefinitions;
             enumerable2 = enumerable;
         }
         else
         {
             IEnumerable enumerable = this._resizeData.Grid.ColumnDefinitions;
             enumerable2 = enumerable;
         }
         IEnumerable enumerable3 = enumerable2;
         int         num         = 0;
         using (IEnumerator enumerator = enumerable3.GetEnumerator())
         {
             while (enumerator.MoveNext())
             {
                 object         obj        = enumerator.Current;
                 DefinitionBase definition = (DefinitionBase)obj;
                 if (num == this._resizeData.Definition1Index)
                 {
                     GridSplitter.SetDefinitionLength(definition, new GridLength(definition1Pixels, GridUnitType.Star));
                 }
                 else if (num == this._resizeData.Definition2Index)
                 {
                     GridSplitter.SetDefinitionLength(definition, new GridLength(definition2Pixels, GridUnitType.Star));
                 }
                 else if (GridSplitter.IsStar(definition))
                 {
                     GridSplitter.SetDefinitionLength(definition, new GridLength(this.GetActualLength(definition), GridUnitType.Star));
                 }
                 num++;
             }
             return;
         }
     }
     if (this._resizeData.SplitBehavior == GridSplitter.SplitBehavior.Resize1)
     {
         GridSplitter.SetDefinitionLength(this._resizeData.Definition1, new GridLength(definition1Pixels));
         return;
     }
     GridSplitter.SetDefinitionLength(this._resizeData.Definition2, new GridLength(definition2Pixels));
 }