示例#1
0
        private static void OnPositionPropertyChange(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            ScaleSlider obj    = d as ScaleSlider;
            double      offset = (obj.Position - obj.Min) / (obj.Max - obj.Min) * (obj.Width - obj.ArrowWidth);

            obj.Arrow.Margin          = new Thickness(offset, 0, 0, 0);
            obj.PositionLabel.Margin  = new Thickness(offset - 3, 8, 0, 0);
            obj.PositionLabel.Content = obj.Position;
        }
示例#2
0
        private static void OnTransformPropertyChange(DependencyObject d, DependencyPropertyChangedEventArgs e)
        {
            ScaleSlider     obj = d as ScaleSlider;
            RotateTransform myRotateTransform = new RotateTransform();
            ScaleTransform  myScaleTransform  = new ScaleTransform();

            myScaleTransform.ScaleX  = obj.LabelScaleXTransform;
            myScaleTransform.ScaleY  = obj.LabelScaleYTransform;
            myScaleTransform.CenterY = 1;
            myRotateTransform.Angle  = obj.LabelRotation;
            TransformGroup myTransformGroup = new TransformGroup();

            myTransformGroup.Children.Add(myRotateTransform);
            myTransformGroup.Children.Add(myScaleTransform);
            obj.PositionLabel.RenderTransform       = myTransformGroup;
            obj.PositionLabel.RenderTransformOrigin = new Point(0.45, 0.65);
        }