zoukankan      html  css  js  c++  java
  • SL4.背景图片拖动

    XAML:

            <Grid x:Name="MainGrid">
    <ScrollViewer x:Name="canvasScroller"
    VerticalScrollBarVisibility
    ="Hidden"
    HorizontalScrollBarVisibility
    ="Hidden" >
    <Canvas x:Name="LayoutRoot"
    Width
    ="1024"
    Height
    ="768"
    MouseMove
    ="CanvasMove" MouseLeftButtonDown="CanvasDown" MouseLeftButtonUp="CanvasUp" MouseLeave="LayoutRoot_MouseLeave">
    <Image Source="yi.jpg"
    Width
    ="1024"
    Height
    ="768"/>

    </Canvas>
    </ScrollViewer >
    </Grid>

      XAML.CS

            private double horizontalValue = 0;
            private double verticalValue = 0;
            bool? moving = null;
            Point startingPos = new Point();
            Point endingPos = new Point();
            private double dx = 0;
            private double dy = 0;
            bool posChanged = false;
         private void CanvasDown(object sender, System.Windows.Input.MouseButtonEventArgs e)
    {
    moving
    = false;
    LayoutRoot.Cursor
    = Cursors.Arrow;

    startingPos
    = e.GetPosition(LayoutRoot);
    }
    private void CanvasMove(object sender, System.Windows.Input.MouseEventArgs e)
    {
    if ((moving != null) && (moving == false))
    {
    moving
    = true;
    posChanged
    = true;
    LayoutRoot.Cursor
    = Cursors.Hand;
    }

    if (posChanged)
    {
    endingPos
    = e.GetPosition(LayoutRoot);

    dx
    = startingPos.X - endingPos.X;
    dy
    = startingPos.Y - endingPos.Y;

    double newPosY = canvasScroller.VerticalOffset + dy;
    double newPosX = canvasScroller.HorizontalOffset + dx;

    canvasScroller.ScrollToHorizontalOffset(newPosX);
    canvasScroller.ScrollToVerticalOffset(newPosY);
    }
    }

    private void CanvasUp(object sender, System.Windows.Input.MouseButtonEventArgs e)
    {
    posChanged
    = false;

    LayoutRoot.Cursor
    = Cursors.Arrow;
    }

    private void LayoutRoot_MouseLeave(object sender, System.Windows.Input.MouseEventArgs e)
    {
    // 在此处添加事件处理程序实现。
    posChanged = false;

    LayoutRoot.Cursor
    = Cursors.Arrow;
    }

      

  • 相关阅读:
    用python3实现linux的sed功能
    查找列表中指定的所有元素的位置
    Django分页
    python3中字典的copy
    Python中is和==的区别的
    python3的文件读写模式
    使用python3简单完成购物过程
    python3中str的函数
    第一篇
    《笑傲江湖》传剑摘录 有感而发
  • 原文地址:https://www.cnblogs.com/baobao2010/p/2172614.html
Copyright © 2011-2022 走看看