Inheritance: System.EventArgs
コード例 #1
0
        protected override void OnItemDrag(ItemDragEventArgs e)
        {
            //Begins a drag-and-drop operation in the ListView control.
            this.DoDragDrop(this.SelectedItems, DragDropEffects.Move);

            base.OnItemDrag(e);
        }
コード例 #2
0
        private void treeView1_ItemDrag(object sender, ItemDragEventArgs e)
        {
            // gx2. jsx, jsc reflector
            // ?

            // http://support.microsoft.com/kb/307968

            // we can drag it into scite
            // DragDrop.DoDragDrop returns only after the complete drag-drop process is finished,
            // http://w3facility.org/question/dodragdrop-freezes-winforms-app-sometimes/
            // https://msdn.microsoft.com/en-us/library/ms649011(VS.85).aspx

            // http://www.codeproject.com/Articles/17266/Drag-and-Drop-Items-in-a-WPF-ListView

            Console.WriteLine("treeView1_ItemDrag"); ;

            // http://stackoverflow.com/questions/1772102/c-sharp-drag-and-drop-from-my-custom-app-to-notepad
            var x = new DataObject(
                "treeView1_ItemDrag " + new { e.Item }
            );


            // like props/ reg keys/ version nodes
            x.SetData("text/nodes/0", "hello");
            x.SetData("text/nodes/1", "world");

            // https://msdn.microsoft.com/en-us/library/system.windows.forms.control.dodragdrop(v=vs.110).aspx
            //this.DoDragDrop("treeView1_ItemDrag " + new { e.Item }, DragDropEffects.Copy);
            treeView1.DoDragDrop(x, DragDropEffects.Copy);

            // https://code.google.com/p/chromium/issues/detail?id=31037
            // https://searchcode.com/codesearch/view/32985148/
        }
コード例 #3
0
ファイル: MainForm.cs プロジェクト: mwilian/demos
 private void tvFields_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
 {
     try
     {
         MemoryStream xlsStream = null;
         try
         {
             object o = GetClipboardObj((TreeNode)e.Item, ref xlsStream);
             if (o != null)
             {
                 DoDragDrop(o, DragDropEffects.Copy);
             }
         }
         finally
         {
             if (xlsStream != null)
             {
                 xlsStream.Close();
             }
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
 }
コード例 #4
0
        private void tv1_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            //Primary (internal) data type
            ArrayList toDrag = new ArrayList();
            CShItem   csi    = ((TreeNode)e.Item).Tag as CShItem;

            toDrag.Add(csi);
            //also need Shell IDList Array
            System.IO.MemoryStream MS;
            MS = CProcDataObject.MakeShellIDArray(toDrag);
            //Fairly universal data type (must be an array)
            string[] strD = new string[1];
            strD[0] = csi.Path;
            //Build data to drag
            DataObject dataObj = new DataObject();

            dataObj.SetData(toDrag);
            if (MS != null)
            {
                dataObj.SetData("Shell IDList Array", true, MS);
            }
            dataObj.SetData("FileDrop", true, strD);
            //Do drag, allowing Copy and Move
            DragDropEffects ddeff;

            ddeff = tv1.DoDragDrop(dataObj, DragDropEffects.Copy | DragDropEffects.Move);
            //the following line commented out, since we can't depend on ddeff
            //If ddeff = DragDropEffects.None Then Exit Sub 'nothing happened
            RefreshNode(FindAncestorNode(csi));
        }
コード例 #5
0
        //is the drag event a drag using the right mouse button

        private void TreeView_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            // -----------------------------------------------------------------
            // User has initiated a drag on a node - the full xml of the node
            // is stored as the data associated with the drag event args.
            // -----------------------------------------------------------------

            //If what is being dragged is not already in the controller as a selected item.

            if ((Controller.SelectedFactorialPath != GetPathFromNode((TreeNode)e.Item)))
            {
                SelectedNode = (TreeNode)e.Item;
                //add it to the base controller (by setting the selected node of the tree to the dragged item. This then fires the selection changed event for the tree which I think is handled by the base controller. This will add the dragged items to the base controller)
            }

            //Work out the xml of what you are dragging.
            string FullXML = "";

            //used to store the xml of ALL the components that have been selected in the drag  'reset it to nothing, ready for recreation.
            ApsimFile.Component Comp = Controller.ApsimData.Find(Controller.SelectedFactorialPath);
            //get the component for this particular selected node (using it's path)
            FullXML = FullXML + Comp.FullXML();
            //get the xml for the component and add it to the xml of previous selected nodes
            PathsBeingDragged = new StringCollection();
            PathsBeingDragged.Add(Controller.SelectedFactorialPath);
            //store the paths of ALL the nodes that are being dragged in a global variable, so it can be used by other drag events.

            //Raise the other DragDropEvents
            DoDragDrop(FullXML, DragDropEffects.Copy);
            //parameters: (Store xml of what you are dragging in "data" Drag Event Argument), (allowable types of left mouse drags [Drag Drop Effects are of type FlagsAttribute, which allow bitwise operators AND and OR]).
        }
コード例 #6
0
 private void lstVwPaginated_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
 {
     if (ItemDrag != null)
     {
         ItemDrag(sender, e);
     }
 }
コード例 #7
0
 private void ListViewItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
 {
     // --------------------------------------------------------
     // User is trying to initiate a drag - allow drag operation
     // --------------------------------------------------------
     VariableListView.DoDragDrop("xx", DragDropEffects.All);
 }
コード例 #8
0
        private void treeView_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            TreeNode node = (TreeNode)e.Item;

            if (node == null || node.Tag == null)
            {
                return;
            }

            // create a data object
            DataObject data;

            if (node.Tag is String)
            {
                data = new DataObject(DataFormats.Text, node.Tag);
            }
            else if (node.Tag is Bitmap)
            {
                data = new DataObject(DataFormats.Bitmap, node.Tag);
            }
            else if (node.Tag is NMyDataObject)
            {
                data = new DataObject("My Custom Format", node.Tag);
            }
            else
            {
                return;
            }

            treeView.DoDragDrop(data, DragDropEffects.Copy);
        }
コード例 #9
0
ファイル: frmFoodCost.cs プロジェクト: carreygroup/rms
 private void TreeView1_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
 {
     if (!(TreeView1.SelectedNode.GetNodeCount(true) > 0))
     {
         TreeView1.DoDragDrop(TreeView1.SelectedNode.Text, DragDropEffects.Copy | DragDropEffects.Move);
     }
 }
コード例 #10
0
        // On dragging beggin
        private void camerasTree_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            TreeNode dragNode = (TreeNode)e.Item;

            // drag it
            camerasTree.DoDragDrop(dragNode.FullPath, DragDropEffects.Copy);
        }
コード例 #11
0
        /// <summary>
        /// This method initialises the dragging of a ListViewItem
        /// </summary>
        void ItemDrag(object sender, ItemDragEventArgs e)
        {
            ReleaseCom();

            startButton = e.Button;

            FileSystemInfo[] items = listView.GetSelected();

            List<ShellItem> list = new List<ShellItem>();
            foreach (FileSystemInfo f in items)
            {
                //IntPtr[] pidls = ShellFolder.GetPIDLs(items);
                IntPtr pidl = ShellFolder.GetPathPIDL(f);
                //IShellFolder parentShellFolder = ShellFolder.GetParentShellFolder(items[0]);
                string parentDirectory = ShellFolder.GetParentDirectoryPath(f);
                IntPtr parentShellFolder = ShellFolder.GetShellFolderIntPtr(parentDirectory);


                ShellItem item = new ShellItem(browser, pidl, parentShellFolder);
                list.Add(item);
            }

            dataObjectPtr = ShellHelper.GetIDataObject(list.ToArray());

            if (dataObjectPtr != IntPtr.Zero)
            {
                DragDropEffects effects;
                //OnDragStart(new DragEnterEventArgs((items[0].ParentItem != null ? items[0].ParentItem : items[0]), fileView.ListView));
                ShellAPI.DoDragDrop(dataObjectPtr, this, DragDropEffects.Copy | DragDropEffects.Link | DragDropEffects.Move, out effects);
                //OnDragEnd(new EventArgs());
            }
        }
コード例 #12
0
        private void tvStatuses_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            NodeToBeDeleted = (TreeNode)e.Item;
            string strItem = e.Item.ToString();

            DoDragDrop(strItem, DragDropEffects.Copy | DragDropEffects.Move);
        }
コード例 #13
0
        // --------------------------------------------------------
        // User is trying to initiate a drag - allow drag operation
        // --------------------------------------------------------
        private void ListView_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            ApsimFile.Component Comp         = Controller.ApsimData.Find(NodePath);
            ApsimFile.Component SelectedComp = Comp.Find(ListView.SelectedItems[0].Text);
            string DataString = SelectedComp.FullXML();

            ListView.DoDragDrop(DataString, DragDropEffects.All);
        }
コード例 #14
0
        private void base_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            System.Diagnostics.Debug.WriteLine("ItemDrag fired");
            TreeNode      draggedNode        = (TreeNode)e.Item;
            ContentDetail noteForDraggedNode = GetContentDetailForNode(draggedNode);

            this.DoDragDrop(new DraggedNodeData(this.InstanceId, noteForDraggedNode.Id, noteForDraggedNode.Xml), DragDropEffects.Move | DragDropEffects.Copy);
        }
コード例 #15
0
ファイル: FormFindOld.cs プロジェクト: radtek/SLBZ
 /// <summary>
 /// Called when we start dragging an item out of our listview
 /// </summary>
 private void listViewFile_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
 {
     string[] files = GetSelection();
     if (files != null)
     {
         DoDragDrop(new DataObject(DataFormats.FileDrop, files), DragDropEffects.Copy /* | DragDropEffects.Move | DragDropEffects.Link */);
     }
 }
コード例 #16
0
 protected override void OnItemDrag(ItemDragEventArgs e)
 {
     // can't drag the root node
     if (!base.SelectedNodes.Contains(base.Nodes[0]))
         DoDragDrop(BeginDragNodes(base.SelectedNodes), DragDropEffects.All);
     else
         base.OnItemDrag(e);
 }
コード例 #17
0
ファイル: StencilChooser.cs プロジェクト: ChrisMoreton/Test3
 private void stencilChooserTreeView_ItemDrag(object sender, ItemDragEventArgs e)
 {
   ModelStencil modelStencil;
   if (modelStencils.TryGetValue(((TreeNode)e.Item).Text, out modelStencil))
   {
     this.DoDragDrop(modelStencil, DragDropEffects.Move);
   }
 }
コード例 #18
0
 private void tvDoctorGroup_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
 {
     if (e.Button == MouseButtons.Left)
     {
         //开始进行"Drag"操作
         DoDragDrop((TreeNode)e.Item, DragDropEffects.Move);
     }
 }
コード例 #19
0
ファイル: MPListView.cs プロジェクト: arangas/MediaPortal-1
    //protected override void WndProc(ref System.Windows.Forms.Message m)
    //{
    //  const int WM_PAINT = 0xf ;

    //  switch(m.Msg)
    //  {
    //    case WM_PAINT:
    //      if(this.View == System.Windows.Forms.View.Details && this.Columns.Count > 0)
    //      {
    //        this.Columns[this.Columns.Count - 1].Width = -2 ;
    //      }
    //      break ;
    //  }

    //  base.WndProc (ref m);
    //}

    protected override void OnItemDrag(ItemDragEventArgs e)
    {
      if (!this.AllowRowReorder)
      {
        return;
      }
      base.DoDragDrop(REORDER, DragDropEffects.Move);
      base.OnItemDrag(e);
    }
コード例 #20
0
ファイル: SourceForm.cs プロジェクト: WeDoCrm/MessengerSocket
        private void treeView_ItemDrag(object sender, ItemDragEventArgs e)
        {
            Debug.WriteLine("\t Source Tree Item Dragged... ");

            if (e.Button == MouseButtons.Left)
            {
                treeView.DoDragDrop(e.Item.ToString(), DragDropEffects.Copy | DragDropEffects.All);
            }
        }
コード例 #21
0
		private void _folders_ItemDrag(object sender, ItemDragEventArgs e)
		{
			// allow dragging of nodes
			var selection = (ISelection)e.Item;

			// send the node
			if (selection.Item != null)
				_folders.DoDragDrop(selection.Item, DragDropEffects.Move);
		}
コード例 #22
0
 private void lstv_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
 {
     XBitmap[] axbm = new XBitmap[lstv.SelectedItems.Count];
     for (int i = 0; i < lstv.SelectedItems.Count; i++)
     {
         axbm[i] = (XBitmap)lstv.SelectedItems[i].Tag;
     }
     DoDragDrop(axbm, DragDropEffects.All);
 }
コード例 #23
0
        private void treeSchema_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            TreeNode node = (TreeNode)e.Item;

            if (node != null)
            {
                treeSchema.DoDragDrop(node.Text, DragDropEffects.Copy | DragDropEffects.Move);
            }
        }
コード例 #24
0
        // drag nodes from tree to grid
        private void _tree_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            TreeNode node = e.Item as TreeNode;

            if (node != null && node.Tag is DataColumn)
            {
                DoDragDrop(e.Item, DragDropEffects.Copy);
            }
        }
コード例 #25
0
        /// <summary>
        /// Starts a drag-and-drop operation on the FolderList.
        /// </summary>
        /// <param name="sender">The control that is the source of the event.</param>
        /// <param name="e">Arguments associated with the event.</param>
        private void treeView_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            // Extract the parameters that are useful in describing and opening up an object.  This is the value that will be
            // passed around to other controls that can consume a drag-and-drop operation from the Folder List.
            DataObject dataObject = new DataObject(typeof(TreeNode).ToString(), e.Item);

            // Begin the drag-and-drop operation with the element selected.
            this.DoDragDrop(dataObject, DragDropEffects.Copy | DragDropEffects.Move);
        }
コード例 #26
0
        private void listView1_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            ListViewItem dragedLvi = (ListViewItem)e.Item;

            if (DragDropEffects.Move == listView1.DoDragDrop(dragedLvi, DragDropEffects.Move))
            {
                listView1.Items.Remove(dragedLvi);
            }
        }
コード例 #27
0
        /// <summary>
        /// Starts drag and drop.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void _qsetTreeView_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            QSetItemBase item = ((QSetItemTreeNode)e.Item).QSetItem;

            if (!(item.ParentItem is QSetMachineItem) && !(item is QSetModel))
            {
                _qsetTreeView.DoDragDrop(((QSetItemTreeNode)e.Item).QSetItem, DragDropEffects.Move);
            }
        }
コード例 #28
0
    // the ItemDrag event for both TreeView controls.

    private void TreeView_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
    {
        if (e.Button == MouseButtons.Left)
        {
            //invoke the drag and drop operation

            DoDragDrop(e.Item, DragDropEffects.Move | DragDropEffects.Copy);
        }
    }
コード例 #29
0
		private void MogControl_PackageTreeView_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
		{
			DataObject send = GetItemDragEventDataObject();

			if (send != null)
			{
				// Fire the DragDrop event
				DragDropEffects dde1 = DoDragDrop(send, DragDropEffects.Copy);
			}
		}
コード例 #30
0
ファイル: FileImporter.cs プロジェクト: MOGwareSupport/MOG
        private void tvTree_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            ArrayList nodes = new ArrayList();

            foreach (imTreeNode tn in this.tvTree.SelectedNodes)
            {
                nodes.Add(tn);
            }
            this.tvTree.DoDragDrop(nodes, DragDropEffects.Link);
        }
コード例 #31
0
        /// <summary>
        ///  Prepare to drag a package into the assigned packages window
        /// </summary>
        private void ProjectPackagesTreeView_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            DataObject send = PrepareDragObject(ProjectPackagesTreeView, ProjectPackagesTreeView.SelectedNode);

            if (send != null)
            {
                // Fire the DragDrop event
                DragDropEffects dde1 = DoDragDrop(send, DragDropEffects.Copy);
            }
        }
コード例 #32
0
        private void listView1_ItemDrag(object sender, ItemDragEventArgs e)
        {
            if (e.Item is ListViewItem)
            {
                var listViewItem = e.Item as ListViewItem;

                if (!string.IsNullOrEmpty(listViewItem.Text))
                    DoDragDrop(new DragItem(listViewItem.Text), DragDropEffects.Copy);
            }
        }
コード例 #33
0
ファイル: ViewStructure.cs プロジェクト: ewin66/intvideosurv
        // On dragging beggin
        private void camerasTree_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            TreeNode dragNode = (TreeNode)e.Item;

            // check for camera item
            if (camerasTree.GetNodeType(dragNode) == NodeType.Camera)
            {
                // drag it
                camerasTree.DoDragDrop(camerasTree.GetCameraFullName(dragNode), DragDropEffects.Copy);
            }
        }
コード例 #34
0
ファイル: JThumbnailView.cs プロジェクト: 6555355/Scan_yan1
        private void JThumbnailView_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            ArrayList files = new ArrayList();

            foreach (ListViewItem lvi in this.SelectedItems)
            {
                files.Add(lvi.Tag.ToString());
            }
            //			DataObjectEx data = new DataObjectEx();
            //			data.SetData(DataFormats.FileDrop, (string[])files.ToArray(typeof(string)));
            DragDropEffects res = this.DoDragDrop((string[])files.ToArray(typeof(string)), DragDropEffects.Copy | DragDropEffects.Move);
        }
コード例 #35
0
 private void lvRepositories_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
 {
     if (this.lvRepositories.SelectedItems.Count > 0)
     {
         ArrayList selected = new ArrayList();
         foreach (ListViewItem item in this.lvRepositories.SelectedItems)
         {
             selected.Add(item);
         }
         this.lvRepositories.DoDragDrop(selected, DragDropEffects.Move);
     }
 }
コード例 #36
0
        private void lsvBedView_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            lsvBedView.DoDragDrop(e.Item, DragDropEffects.Move);
            ListViewItem lvi = (ListViewItem)e.Item;

            ai = lvi.Index;
            //换床处理
            if (ChangeItems(ai, bi) == 1)
            {
                //刷新床位***待添加
            }
        }
コード例 #37
0
ファイル: ProjectExplorer.cs プロジェクト: wowjinxy/C64Studio
        private void treeProject_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            System.Windows.Forms.TreeNode node = (System.Windows.Forms.TreeNode)e.Item;

            if (node.Level == 0)
            {
                return;
            }
            timerDragDrop.Interval = 100;
            timerDragDrop.Start();
            DoDragDrop(e.Item, DragDropEffects.Move);
        }
コード例 #38
0
 private void C_GroupInfoTree_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
 {
     // Move the dragged node when the left mouse button is used.
     if (e.Button == MouseButtons.Left)
     {
         DoDragDrop(e.Item, DragDropEffects.Move);
     }
     // Copy the dragged node when the right mouse button is used.
     else if (e.Button == MouseButtons.Right)
     {
         DoDragDrop(e.Item, DragDropEffects.Copy);
     }
 }
コード例 #39
0
ファイル: Form1.cs プロジェクト: GitHub-Pan/winforms-demos
        private void treeViewAdv_ItemDrag(object sender, System.Windows.Forms.ItemDragEventArgs e)
        {
            TreeViewAdv treeViewAdv = sender as TreeViewAdv;

            // The TreeViewAdv always provides an array of selected nodes.
            TreeNodeAdv[] nodes = e.Item as TreeNodeAdv[];

            // Let us get only the first selected node.
            TreeNodeAdv node = nodes[0];

            // Only allow move
            DragDropEffects result = treeViewAdv.DoDragDrop(nodes, DragDropEffects.Move);
        }
コード例 #40
0
        private void CourseTree_ItemDrag(object sender, ItemDragEventArgs e)
        {
            if (EditorObserver.HostEditorMode == Utils.Controls.HtmlEditing.Enums.HtmlEditingToolMode.Design)
            {
                dragNode = (TreeNode)e.Item;
                CourseTree.SelectedNode = dragNode;

                // Запрещено перемещать следующие узлы: 
                // корень учебной программы, входы, выходы, ответы, компетенции 
                // во входах, кроме внешних компетенций.
                if (!(dragNode is CourseRoot ||
                      dragNode is InConceptParent ||
                      dragNode is OutConceptParent ||
                      dragNode is Response ||
                      dragNode is InConceptParent &&
                      dragNode.Parent == CourseTree.InConceptsParent ||
                      dragNode is InDummyConcept &&
                      dragNode.Parent != CourseTree.InConceptsParent))
                {
                    //if (((CourseItem)dragNode).NodeType == Enums.ItemType.Question)
                    //{
                    //    question = (dragNode as Question);
                    //    priorParent = (dragNode.Parent as ECNode);
                    //}

                    dragImageList.Images.Clear();
                    if (dragNode.Bounds.Size.Width + CourseTree.Indent > 256)
                    {
                        dragImageList.ImageSize = new Size(256, dragNode.Bounds.Height);
                    }
                    else
                    {
                        dragImageList.ImageSize = new Size(dragNode.Bounds.Size.Width + CourseTree.Indent,
                                                           dragNode.Bounds.Height);
                    }
                    var bmp = new Bitmap(dragNode.Bounds.Width + CourseTree.Indent, dragNode.Bounds.Height);
                    var g = Graphics.FromImage(bmp);
                    g.DrawString(dragNode.Text, CourseTree.Font, new SolidBrush(CourseTree.ForeColor), CourseTree.Indent,
                                 1.0f);
                    dragImageList.Images.Add(bmp);
                    var p = CourseTree.PointToClient(Control.MousePosition);
                    var dx = p.X + CourseTree.Indent - dragNode.Bounds.Left;
                    var dy = p.Y - dragNode.Bounds.Top;
                    if (DragHelper.ImageList_BeginDrag(dragImageList.Handle, 0, dx, dy))
                    {
                        CourseTree.DoDragDrop(bmp, DragDropEffects.Move);
                        DragHelper.ImageList_EndDrag();
                    }
                }
            }
        }
コード例 #41
0
        private void listView_ItemDrag(object sender, ItemDragEventArgs e)
        {
            ListView listView = sender as ListView;
            if (listView == null)
                return;

            if (listView == lvDisplayedColumns && listView.SelectedItems.Contains(lvDisplayedColumns.Items[0]))
            {
                MessageBox.Show(this, string.Format("The \"{0}\" column can't be moved!", ((ColumnData)lvDisplayedColumns.Items[0].Tag).Header));
                return;
            }

            mDragStartListView = listView;
            mDragStartListView.DoDragDrop(listView.SelectedItems, DragDropEffects.Move | DragDropEffects.Copy);
        }
コード例 #42
0
        /// <summary>
        /// This method initialises the dragging of a TreeNode
        /// </summary>
        void ItemDrag(object sender, ItemDragEventArgs e)
        {
            ReleaseCom();

            startButton = e.Button;
            ShellItem item = (ShellItem)((TreeNode)e.Item).Tag;
            dataObjectPtr = ShellHelper.GetIDataObject(new ShellItem[] { item });

            if (dataObjectPtr != IntPtr.Zero)
            {
                DragDropEffects effects;
                OnDragStart(new DragEnterEventArgs((item.ParentItem != null ? item.ParentItem : item), br.FolderView));
                ShellAPI.DoDragDrop(dataObjectPtr, this, DragDropEffects.Copy | DragDropEffects.Link | DragDropEffects.Move, out effects);
                OnDragEnd(new EventArgs());
            }
        }
コード例 #43
0
		// Used to start a drag
		protected void ItemDragEvent(object sender, ItemDragEventArgs e)
		{
			try {
				if (e.Item is IDragDropItem) {
					IDragDropItem node = (IDragDropItem)e.Item;
					node.SelectThisItem();

					if (node.IsDragSource) {
						// Not too elegant, but we might be dragging
						// controls to the design surface
						DesignerHost.Host.AddingControls = true;
						((Control)_control).DoDragDrop(node, DragDropEffects.Copy);
						DesignerHost.Host.AddingControls = false;
					}
				}
			} catch (Exception ex) {
				TraceUtil.WriteLineWarning(this, "ItemDragEvent exception: " + ex);
			}
		}
コード例 #44
0
        private void listViewResults_ItemDrag(object sender, ItemDragEventArgs e)
        {
            List<int> cardIDs = new List<int>();

            foreach (ListViewItem item in listViewResults.SelectedItems)
            {
                if(item is IDListViewItem)
                    cardIDs.Add(((IDListViewItem)item).ID);
            }

            if (cardIDs.Count > 0)
            {
                LanguageData dataLayer = new LanguageData();
                string description = string.Empty;

                foreach (dsLanguageData.CardRow card in dataLayer.GetCardsByIDs(cardIDs))
                {
                    description += ", " + card.Question;
                }
                description = description.Remove(0, 2);

                DoDragDrop(new CardDragDropHolder(this, cardIDs, description, CardDragDropAction.Add), DragDropEffects.All);
            }
        }
コード例 #45
0
 private void treeView1_ItemDrag(object sender, ItemDragEventArgs e)
 {
     if (e.Item is EditorItem)
         DoDragDrop(e.Item, DragDropEffects.Move);
 }
コード例 #46
0
ファイル: MainForm.cs プロジェクト: hzl2928963/gleed2d
 private void treeView1_ItemDrag(object sender, ItemDragEventArgs e)
 {
     if (((TreeNode)e.Item).Tag is Layer) return;
     if (((TreeNode)e.Item).Tag is Level) return;
     Editor.Instance.beginCommand("Drag Item");
     DoDragDrop(e.Item, DragDropEffects.Move);
 }
コード例 #47
0
ファイル: MainForm.cs プロジェクト: hzl2928963/gleed2d
 private void listView1_ItemDrag(object sender, ItemDragEventArgs e)
 {
     ListViewItem lvi = (ListViewItem)e.Item;
     if (lvi.Tag.ToString() == "folder") return;
     toolStripStatusLabel1.Text = lvi.ToolTipText;
     Bitmap bmp = new Bitmap(listView1.LargeImageList.Images[lvi.ImageKey]);
     dragcursor = new Cursor(bmp.GetHicon());
     listView1.DoDragDrop(e.Item, DragDropEffects.Move);
 }
コード例 #48
0
ファイル: FrmMain.cs プロジェクト: ChrisMoreton/Test3
 private void lstDBSpecies_ItemDrag(object sender, ItemDragEventArgs e)
 {
   SpecieDrag drag = new SpecieDrag(new DataRow[lstDBSpecies.SelectedItems.Count]);
   for (int i = 0; i < lstDBSpecies.SelectedItems.Count; i++)
     drag.Value[i] = (DataRow)lstDBSpecies.SelectedItems[i].Tag;
   DoDragDrop(drag, DragDropEffects.Move | DragDropEffects.Link);
 }
コード例 #49
0
ファイル: SimTreeView.cs プロジェクト: GoldMax/Pulsar.NET
		//-------------------------------------------------------------------------------------
		#region << Drag&Drop Methods >>
		void treeView_ItemDrag(object sender, ItemDragEventArgs e)
		{
			try
			{
				if(allowInternalDragDrop == false)
					return;
				if((e.Button & MouseButtons.Left) != MouseButtons.Left)
					return;
				StringFormat sf = new StringFormat();
				sf.Trimming = StringTrimming.EllipsisCharacter;

				ITreeItem item = (ITreeItem)((SimTreeNode)e.Item).TreeItem;
				if(item != SelectedNodeItem)
					SelectNodeWithItem(item);

				Bitmap bmp = null;
				Brush back = null;
				Pen border = null;
				try
				{
					back = new SolidBrush(SystemColors.Info);
					border = new Pen(SystemColors.InfoText);

					SizeF ms = this.CreateGraphics().MeasureString(item.ItemText, treeView.Font);
					if(ms.Width > this.Width - 50)
						ms.Width = this.Width - 50;
					Rectangle r = new Rectangle(0,0, (int)ms.Width + 5, (int)ms.Height + 2);
					bmp = new Bitmap(r.Width, r.Height, PixelFormat.Format32bppArgb);
					Graphics g = Graphics.FromImage(bmp);
					g.FillRectangle(back, r);
					g.DrawRectangle(border, new Rectangle(0,0,r.Width-1, r.Height-1)); //
					using(SolidBrush text = new SolidBrush(SystemColors.InfoText))
						g.DrawString(item.ItemText, treeView.Font, text, new RectangleF(2, 1, r.Width, r.Height), sf);
					//cursorCan = new Cursor(bmp.GetHicon());
					cursorCan = WinAPI.IconInfo.CreateCursorFromBitmap(bmp, 0,0);

					bmp = new Bitmap(r.Width + 7, r.Height + 7, PixelFormat.Format32bppArgb);
					g = Graphics.FromImage(bmp);
					g.FillRectangle(back, r);
					g.DrawRectangle(border, r);
					using(SolidBrush text = new SolidBrush(SystemColors.InfoText))
						g.DrawString(item.ItemText, treeView.Font, text, new RectangleF(2, 1, r.Width, r.Height), sf);
					g.DrawIcon(Properties.Resources.StopIcon, new Rectangle(r.Width - 9, r.Height - 9, 16, 16));
					//cursorCanNot = new Cursor(bmp.GetHicon());
					cursorCanNot = WinAPI.IconInfo.CreateCursorFromBitmap(bmp, 0, 0);

					this.DoDragDrop(item, DragDropEffects.Move);
					treeView.Cursor = Cursors.Default;
					if(treeView.prevDropNode != null)
					{
						treeView.BeginUpdate();
						treeView.prevDropNode.NodeFont = null;
						treeView.prevDropNode.ForeColor = Color.Empty;
						treeView.prevDropNode = null;
						treeView.EndUpdate();
					}
				}
				finally
				{
					if(back != null)
						back.Dispose();
					back = null;
					if(border != null)
						border.Dispose();
					border = null;
					if(cursorCan != null)
						cursorCan.Dispose();
					cursorCan = null;
					if(cursorCanNot != null)
						cursorCanNot.Dispose();
					cursorCanNot = null;
					if(bmp != null)
						bmp.Dispose();
					bmp = null;
				}
			}
			catch(Exception Err)
			{
				Sim.Controls.ErrorBox.Show(Err);
			}
		}
コード例 #50
0
        /// <summary>
        /// Event handler for item dragging
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        void listViewEntities_ItemDrag(object sender, ItemDragEventArgs e)
        {
            if(e.Item == null)
            return;

              ListViewItem Item = e.Item as ListViewItem;

              if(Item == null || Item.Tag == null || !(Item.Tag is DragAndDropPanelEntry))
            return;

              DragAndDropPanelEntry Entry = Item.Tag as DragAndDropPanelEntry;

              switch (Entry.Type)
              {
            case DragAndDropPanelEntry.EntryType.Model:
              DoDragDrop(new ModelShapeCreator(EditorManager.Project.MakeRelative(Entry.Path)), DragDropEffects.Copy | DragDropEffects.Scroll);
              break;
            case DragAndDropPanelEntry.EntryType.StaticMesh:
              DoDragDrop(new StaticMeshShapeCreator(EditorManager.Project.MakeRelative(Entry.Path)), DragDropEffects.Copy | DragDropEffects.Scroll);
              break;
              }
        }
コード例 #51
0
ファイル: frmCreate.cs プロジェクト: cormanater/chummer5a
        private void treGear_ItemDrag(object sender, ItemDragEventArgs e)
        {
            try
            {
                if (e.Button == MouseButtons.Left)
                {
                    if (treGear.SelectedNode.Level != 1 && treGear.SelectedNode.Level != 0)
                        return;
                    _objDragButton = MouseButtons.Left;
                }
                else
                {
                    if (treGear.SelectedNode.Level == 0)
                        return;
                    _objDragButton = MouseButtons.Right;
                }

                // Do not allow the root element to be moved.
                if (treGear.SelectedNode.Tag.ToString() == "Node_SelectedGear")
                    return;
            }
            catch
            {
                return;
            }
            _intDragLevel = treGear.SelectedNode.Level;
            DoDragDrop(e.Item, DragDropEffects.Move);
        }
コード例 #52
0
ファイル: frmCreate.cs プロジェクト: cormanater/chummer5a
        private void treWeapons_ItemDrag(object sender, ItemDragEventArgs e)
        {
            try
            {
                if (treWeapons.SelectedNode.Level != 1 && treWeapons.SelectedNode.Level != 0)
                    return;

                // Do not allow the root element to be moved.
                if (treWeapons.SelectedNode.Tag.ToString() == "Node_SelectedWeapons")
                    return;
            }
            catch
            {
                return;
            }
            _intDragLevel = treWeapons.SelectedNode.Level;
            DoDragDrop(e.Item, DragDropEffects.Move);
        }
コード例 #53
0
ファイル: frmCreate.cs プロジェクト: cormanater/chummer5a
 private void treLifestyles_ItemDrag(object sender, ItemDragEventArgs e)
 {
     try
     {
         if (treLifestyles.SelectedNode.Level != 1)
             return;
     }
     catch
     {
         return;
     }
     _intDragLevel = treLifestyles.SelectedNode.Level;
     DoDragDrop(e.Item, DragDropEffects.Move);
 }
コード例 #54
0
 private void listView1_ItemDrag(object sender, ItemDragEventArgs e)
 {
   if (e.Item is ListViewItem)
   {
     ReOrder();
   }
 }
コード例 #55
0
ファイル: frmCreate.cs プロジェクト: cormanater/chummer5a
 private void treVehicles_ItemDrag(object sender, ItemDragEventArgs e)
 {
     try
     {
         if (treVehicles.SelectedNode.Level != 1)
         {
             // Determine if this is a piece of Gear. If not, don't let the user drag the Node.
             Vehicle objVehicle = new Vehicle(_objCharacter);
             Gear objGear = _objFunctions.FindVehicleGear(treVehicles.SelectedNode.Tag.ToString(), _objCharacter.Vehicles, out objVehicle);
             if (objGear != null)
             {
                 _objDragButton = e.Button;
                 _blnDraggingGear = true;
             }
             else
             {
                 return;
             }
         }
     }
     catch
     {
         return;
     }
     _intDragLevel = treVehicles.SelectedNode.Level;
     DoDragDrop(e.Item, DragDropEffects.Move);
 }
コード例 #56
0
ファイル: Form1.cs プロジェクト: peavey2787/WatchMe
 //Drag a show
 private void lstvw_Display_ItemDrag(object sender, ItemDragEventArgs e)
 {
     BeingDragged = lstvw_Display.SelectedItems[0].Name;
     lstvw_Display.DoDragDrop(BeingDragged, DragDropEffects.Move);
 } 
コード例 #57
0
        /// <summary>
        /// 
        /// </summary>
        /// <param name="e"></param>
        protected override void OnItemDrag(ItemDragEventArgs e)
        {
            base.OnItemDrag(e);

            if (this.DragSource == null)
                return;

            Object data = this.DragSource.StartDrag(this, e.Button, (OLVListItem)e.Item);
            if (data != null) {
                DragDropEffects effect = this.DoDragDrop(data, this.DragSource.GetAllowedEffects(data));
                this.DragSource.EndDrag(data, effect);
            }
        }
コード例 #58
0
 private void tvMetaData_ItemDrag(object sender, ItemDragEventArgs e)
 {
     DoDragDrop(e.Item, DragDropEffects.Move);
 }
コード例 #59
0
 void lsvCacheCookie_ItemDrag(object sender, ItemDragEventArgs e)
 {
     lsvCacheCookie.DoDragDrop(e.Item, DragDropEffects.All);
 }
コード例 #60
0
		protected override void OnMouseMove(MouseEventArgs e)
		{
			if (_rowIndexFromMouseDown != -1 &&
			    (e.Button & MouseButtons.Left) == MouseButtons.Left)
			{
				if (ShouldBeginDrag(e))
				{
					// Proceed with the drag and drop, passing in the list item.  
					ItemDragEventArgs args = new ItemDragEventArgs(MouseButtons.Left, null);
					EventsHelper.Fire(_itemDrag, this, args);

					// reset the drag box to empty so that the event is not fired repeatedly
					_dragBoxFromMouseDown = Rectangle.Empty;
				}
			}
			else
			{
				// allow the base class to handle it only if the left mouse button was not pressed
				base.OnMouseMove(e);
			}
		}