当前位置: 代码迷 >> .NET组件控件 >> 怎么在界面下同时拖动多个控件的?来帮帮忙
  详细解决方案

怎么在界面下同时拖动多个控件的?来帮帮忙

热度:8819   发布时间:2013-02-25 00:00:00.0
如何在界面上同时拖动多个控件的?来帮帮忙。
我需要在用户界面上能够选择并同时拖动多个控件。
会的来帮帮忙。很急的。
我用的语言是C#。

注:不是在设计模式中... ...而编译后所运行的界面。
------最佳解决方案--------------------------------------------------------
看sharpdevelop的源代码。我知道它的窗体设计器实现的。

实际上自己实现也不难,如果你会1个控件的拖动的话。
------其他解决方案--------------------------------------------------------
放入集合IList中。放置时,接受的也是集合。循环集合得到各个控件!
------其他解决方案--------------------------------------------------------
这是ListView里的拖动!
void AllStuList_PreviewMouseMove(object sender, MouseEventArgs e)
        {
            if (e.LeftButton == MouseButtonState.Pressed)
            {
                if (data1 != null)
                {
                    DragDrop.DoDragDrop((DependencyObject)e.OriginalSource, data1, DragDropEffects.Move);
                }
            }
        }

        DataObject data1;
        private void AllStuList_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            data1 = new DataObject(typeof(IList), (sender as ListView).SelectedItems);
        }


这是放置
//放置操作
        void canvas_Drop(object sender, DragEventArgs e)
        {
            Canvas can = sender as Canvas;
            Point point = e.GetPosition(sender as Canvas);
            IDataObject data = e.Data;
            if (data.GetDataPresent(typeof(Label)))
            {...}}

------其他解决方案--------------------------------------------------------
我的项目里有这个功能,实现了多控件的同时拖动。
qq:1277874734
------其他解决方案--------------------------------------------------------
一个控件的移动不难。就是不知道怎么移动多个同时。

谢谢一楼,我看看去
------其他解决方案--------------------------------------------------------
上边的是我做的拖动多个!
------其他解决方案--------------------------------------------------------
谢谢,我想我找到了解决的方法了.
  相关解决方案