Example #1
0
        private void OnItemDrag(object sender, ItemDragEventArgs e)
        {
            // Only allow dragging of one item at a time, so deselect all other items
            foreach (ListViewItem lvi in _listView.Items)
            {
                if (lvi != e.Item)
                {
                    lvi.Selected = false;
                }
            }

            ListViewItem draggedItem = (ListViewItem)e.Item;
            var          galleryItem = (IGalleryItem)draggedItem.Tag;

            DataObject data = new DataObject();

            if (DragOutside)
            {
                data.SetData(galleryItem.Item);
                data.SetText(galleryItem.Item.ToString(), TextDataFormat.UnicodeText);
            }

            // allow event listeners to specify additional formats
            var galleryItemDragEventArgs = new GalleryItemDragEventArgs(galleryItem);

            OnItemDrag(galleryItemDragEventArgs);
            foreach (var additionalData in galleryItemDragEventArgs.AdditionalDataFormats)
            {
                data.SetData(additionalData);
            }

            // in order for drag reorder to work, we do this last to ensure that the ListViewItem format is always our item
            if (DragReorder)
            {
                data.SetData(draggedItem);
            }

            _listView.DoDragDrop(data, DragDropEffects.Move);
        }
Example #2
0
 protected virtual void OnItemDrag(GalleryItemDragEventArgs e)
 {
     EventsHelper.Fire(ItemDrag, this, e);
 }
Example #3
0
		private void OnItemDrag(object sender, ItemDragEventArgs e)
		{
			// Only allow dragging of one item at a time, so deselect all other items
			foreach (ListViewItem lvi in _listView.Items)
			{
				if (lvi != e.Item)
					lvi.Selected = false;
			}

			ListViewItem draggedItem = (ListViewItem) e.Item;
			var galleryItem = (IGalleryItem) draggedItem.Tag;

			DataObject data = new DataObject();
			if (DragOutside)
			{
				data.SetData(galleryItem.Item);
				data.SetText(galleryItem.Item.ToString(), TextDataFormat.UnicodeText);
			}

			// allow event listeners to specify additional formats
			var galleryItemDragEventArgs = new GalleryItemDragEventArgs(galleryItem);
			OnItemDrag(galleryItemDragEventArgs);
			foreach (var additionalData in galleryItemDragEventArgs.AdditionalDataFormats)
				data.SetData(additionalData);

			// in order for drag reorder to work, we do this last to ensure that the ListViewItem format is always our item
			if (DragReorder)
			{
				data.SetData(draggedItem);
			}

			_listView.DoDragDrop(data, DragDropEffects.Move);
		}
Example #4
0
		protected virtual void OnItemDrag(GalleryItemDragEventArgs e)
		{
			EventsHelper.Fire(ItemDrag, this, e);
		}
 protected virtual void OnItemDrag(GalleryItemDragEventArgs e)
 {
 }
 private void OnGalleryViewItemDrag(object sender, GalleryItemDragEventArgs e)
 {
     OnItemDrag(e);
 }