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

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

热度:1085   发布时间:2016-05-04 23:35:05.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
  相关解决方案