Esempio n. 1
0
        private void DrawableListView_MouseUp(object sender, MouseEventArgs e)
        {
            var newItem = DrawableListView.GetItemAt(e.X, e.Y);

            if (newItem != null && newItem.Group != heldDownItem.Group && Drag)
            {
                var oldGroup = DrawableXML.categories.Find(x => x.tag == heldDownItem.SubItems[1].Text);
                var newGroup = DrawableXML.categories.Find(x => x.tag == newItem.SubItems[1].Text);
                var oldItem  = oldGroup.DrawableItems.Find(x => x.tag == heldDownItem.SubItems[2].Text);


                oldGroup.DrawableItems.Remove(oldItem);
                newGroup.DrawableItems.Add(oldItem);



                //MessageBox.Show(heldDownItem.Text);

                Drag                  = false;
                heldDownItem          = null;
                DrawableXML.wasEdited = true;
                SortDrawble();
                PopulateDrawableListView();
            }


            /*ListViewItem NewItem;
             * if ((NewItem = DrawableListView.GetItemAt(e.X, e.Y)) != null && NewItem != heldDownItem && Drag)
             * {
             *  ListViewGroup group = NewItem.Group;
             *  /*var Newgroup = DrawableXML.categories.Find(x => x.tag == NewItem.SubItems[1].Text);
             *  var Drawableitem = Newgroup.DrawableItems.Find(x => x.tag == NewItem.SubItems[2].Text);
             *  var itemIndex = Newgroup.DrawableItems.IndexOf(Drawableitem);
             *
             *  var oldIGroup = DrawableXML.categories.Find(x => x.tag == heldDownItem.SubItems[1].Text);
             *  var oldDrawableItem = oldIGroup.DrawableItems.Find(x => x.tag == heldDownItem.SubItems[2].Text);
             *
             *
             *  var oldItemIndex = oldIGroup.DrawableItems.IndexOf(oldDrawableItem);
             *
             *
             *
             *  oldIGroup.DrawableItems.RemoveAt(oldItemIndex);
             *  Newgroup.DrawableItems.Insert(itemIndex, oldDrawableItem);
             *
             *  /*var groupIndex = heldDownItem.Group;
             *  var index = groupIndex.Items.IndexOf(NewItem);
             *  groupIndex.Items.Remove(heldDownItem);
             *  groupIndex.Items.Insert(index, heldDownItem);*/

            // DrawableListView.Refresh();

            // Drag = false;
            // PopulateDrawableListView();


            // heldDownItem = null;
            //}
        }
Esempio n. 2
0
 private void DrawableListView_MouseDown(object sender, MouseEventArgs e)
 {
     if (Control.MouseButtons == MouseButtons.Left)
     {
         heldDownItem = DrawableListView.GetItemAt(e.X, e.Y);
         Drag         = true;
     }
 }
Esempio n. 3
0
        private void DrawableListView_MouseMove(object sender, MouseEventArgs e)
        {
            if (heldDownItem != null)
            {
                Cursor.Current = Cursors.Hand;

                ListViewItem HoverItem;
                if ((HoverItem = DrawableListView.GetItemAt(e.X, e.Y)) != null)
                {
                    try
                    {
                        DrawableListView.SelectedItems.Clear();
                        DrawableListView.Items[heldDownItem.Index].Selected = true;
                        DrawableListView.Items[HoverItem.Index].Selected    = true;
                    }
                    catch (Exception ex)
                    {
                    }
                }
            }
        }