예제 #1
0
파일: Axis.cs 프로젝트: zyhong/UI-For-UWP
        private static LabelSizeInfo GetLabelSize(FrameworkElement visual)
        {
            RadSize       visualSize = GetVisualDesiredSize(visual);
            LabelSizeInfo sizeInfo   = new LabelSizeInfo()
            {
                UntransformedSize = visualSize
            };

            GeneralTransform transform = visual.RenderTransform;

            if (transform != null)
            {
                Rect labelRect = new Rect(0, 0, visualSize.Width, visualSize.Height);
                labelRect = transform.TransformBounds(labelRect);
                sizeInfo.TransformOffset = new RadPoint(labelRect.X, labelRect.Y);
                sizeInfo.Size            = new RadSize(labelRect.Width, labelRect.Height);
            }
            else
            {
                sizeInfo.Size = visualSize;
            }

            return(sizeInfo);
        }
예제 #2
0
파일: Axis.cs 프로젝트: zyhong/UI-For-UWP
 private static void UpdateLabelSizeInfo(AxisLabelModel label, LabelSizeInfo sizeInfo)
 {
     label.transformOffset          = sizeInfo.TransformOffset;
     label.untransformedDesiredSize = sizeInfo.UntransformedSize;
 }