Exemplo n.º 1
0
        public void MouseMoved(VirtualElementHost element, ControlBase control, MouseEventArgs e)
        {
            var mouseResizable = (IMouseResizable)control;

            var position = e.GetPosition(element);

            if (element.IsMouseCaptured)
            {
                if (element.Cursor == Cursors.SizeWE)
                {
                    control.Width = Math.Max(0, position.X);
                }
                else if (element.Cursor == Cursors.SizeNS)
                {
                    control.Height = Math.Max(0, position.Y);
                }
            }
            else
            {
                bool changed = false;

                if (mouseResizable.CanHorizontalResizing)
                {
                    if (Math.Abs(control.DesiredSize.Width - position.X) < 4)
                    {
                        element.Cursor = Cursors.SizeWE;
                        changed        = true;
                    }
                    else
                    {
                        element.Cursor = null;
                    }
                }

                if (!changed && mouseResizable.CanVerticalResizeing)
                {
                    if (Math.Abs(control.DesiredSize.Height - position.Y) < 4)
                    {
                        element.Cursor = Cursors.SizeNS;
                    }
                    else
                    {
                        element.Cursor = null;
                    }
                }
            }
        }
Exemplo n.º 2
0
 public void MouseLightButtonUp(VirtualElementHost element, ControlBase contorol, MouseButtonEventArgs e)
 {
     element.ReleaseMouseCapture();
 }
Exemplo n.º 3
0
 public void MouseLightButtonDown(VirtualElementHost element, ControlBase contorol, MouseButtonEventArgs e)
 {
     element.CaptureMouse();
 }