/// <summary> /// 保存目标控件的原始位置 /// </summary> internal void Init() { _zIndex = Canvas.GetZIndex(ResizedTgt); Canvas.SetZIndex(ResizedTgt, 0xf423f); if (ResizeBehavior == GridResizer.ResizeBehavior.Resize) { _resizedTgtOriginalSize = new Size(ResizedTgt.ActualWidth, ResizedTgt.ActualHeight); } else { _resizedTgtOriginalChange = TabItemPanel.GetSplitterChange(ResizedTgt); _affectedTgtOriginalChange = TabItemPanel.GetSplitterChange(AffectedTgt); _resizedTgtOriginalSize = ResizedTgt.RenderSize; _affectedTgtOriginalSize = AffectedTgt.RenderSize; } }
/// <summary> /// 取消调整 /// </summary> internal void CancelResize() { if (ResizeBehavior == GridResizer.ResizeBehavior.Resize) { if (IsPlacementHorizontal) { ResizedTgt.Width = ResizedTgtOriginalLength; } else { ResizedTgt.Height = ResizedTgtOriginalLength; } } else { TabItemPanel.SetSplitterChange(ResizedTgt, _resizedTgtOriginalChange); TabItemPanel.SetSplitterChange(AffectedTgt, _affectedTgtOriginalChange); } InvalidatePanelMeasure(); ClearReferences(); }
void SplitItems(double change) { TabItemPanel.SetSplitterChange(ResizedTgt, ResizedTgtOriginalLength + change); TabItemPanel.SetSplitterChange(AffectedTgt, AffectedTgtOriginalLength - change); }