首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 媒体动画 > CAD教程 >

小弟我自己画的一个图形,小弟我想实现拖放 是否可行

2013-10-11 
我自己画的一个图形,我想实现拖放 是否可行?在线等我自己画的一个图形,我想实现拖放 是否可行?在线等谢谢[

我自己画的一个图形,我想实现拖放 是否可行?在线等
我自己画的一个图形,我想实现拖放 是否可行?在线等
谢谢
[解决办法]
轻松+简单.  容器是一个Canvas ,拖拽的是一个自定义UC 


  private void Carrier_ManipulationStarting(object sender, ManipulationStartingEventArgs e)
        {
            e.ManipulationContainer = Carrier;
            e.Mode = ManipulationModes.All;
        }

        private void Carrier_ManipulationDelta(object sender, ManipulationDeltaEventArgs e)
        {
            FrameworkElement element = e.Source as FrameworkElement;

            Matrix matrix = (element.RenderTransform as MatrixTransform).Matrix;
            var deltaManipulation = e.DeltaManipulation;

            Point center = new Point(element.ActualWidth / 2, element.ActualHeight / 2);
            center = matrix.Transform(center);

            #region 处理缩放手势
            matrix.ScaleAt(deltaManipulation.Scale.X, deltaManipulation.Scale.Y, center.X, center.Y);
            #endregion

            #region 处理旋转手势
            matrix.RotateAt(deltaManipulation.Rotation, center.X, center.Y);
            #endregion

            #region 处理移动手势
            matrix.Translate(deltaManipulation.Translation.X, deltaManipulation.Translation.Y);
            #endregion

            (element.RenderTransform as MatrixTransform).Matrix = matrix;

        }

        private void Carrier_ManipulationCompleted(object sender, ManipulationCompletedEventArgs e)
        {

        }

        void Carrier_TouchDown(object sender, TouchEventArgs e)
        {
            FrameworkElement element = e.Source as FrameworkElement;
            Canvas.SetZIndex(element, 2);    //将元素的层次设置为2
            SetZIndex(element, Carrier);
        }

        public void SetZIndex(FrameworkElement element, Canvas canvas)
        {
            foreach (FrameworkElement fe in canvas.Children)
            {
                if (fe != element && !fe.Name.Equals("btnExit"))
                {
                    Canvas.SetZIndex(fe, 1);
                }
            }
        }



[解决办法]
当然可以,你可以看看这篇文章:
http://www.cnblogs.com/chengxingliang/archive/2011/02/17/1956856.html
[解决办法]
自定义控件 添加Thumb类  看看Thumb就行了  尝试着自己实现吧  没必要看别个完整实现的这样锻炼价值不大嘛

热点排行