Beispiel #1
0
 private void treeList1_DoubleClick(object sender, EventArgs e)
 {
     try
     {
         DevExpress.XtraTreeList.TreeList        tree = sender as DevExpress.XtraTreeList.TreeList;
         DevExpress.XtraTreeList.TreeListHitInfo hi   = tree.CalcHitInfo(tree.PointToClient(Control.MousePosition));
         if (hi.Node != null)
         {
             CTechCore.Models.Navigation.Menus.MenuItem mnu = new CTechCore.Models.Navigation.Menus.MenuItem(((DataRowView)tree.GetDataRecordByNode(tree.Selection[0])).Row);
             if (mnu.DisplayAllFormBeforeLoad)
             {
                 CTechCore.Models.Navigation.Menus.DisplayListAll(mnu);
             }
             else
             {
                 CTechCore.Models.Navigation.Menus.LoadEntityForm(mnu);
             }
         }
     }
     catch (Exception ex)
     {
         string msg = $"Error loading screen : {ex.Message}.\r\n {ex.StackTrace}";
         if (ex.InnerException != null)
         {
             msg += ex.InnerException.ToString();
         }
         MessageBox.Show(msg);
         MyApp.Log.WriteEntry(msg, System.Diagnostics.EventLogEntryType.Error);
     }
 }
Beispiel #2
0
        private DragDropEffects GetProjectTreeDragDropEffect(DevExpress.XtraTreeList.TreeList tl, TreeListNode dragNode)
        {
            Point p          = tl.PointToClient(MousePosition);
            var   targetNode = tl.CalcHitInfo(p).Node;

            if (dragNode == null || targetNode == null || dragNode == targetNode)
            {
                return(DragDropEffects.None);
            }
            if (dragNode.Tag == null || targetNode.Tag == null)
            {
                return(DragDropEffects.None);
            }
            var t1 = dragNode.Tag.GetType();
            var t2 = targetNode.Tag.GetType();

            if (t1 == typeof(ViewportInfo) || t1.IsSubclassOf(typeof(ViewportInfo)))
            {
                if (t2 != t1)
                {
                    return(DragDropEffects.None);
                }
                if (dragNode.ParentNode != targetNode.ParentNode)
                {
                    return(DragDropEffects.None);
                }
            }
            else if (t1.IsSubclassOf(typeof(ElementInfo)))
            {
                if (!t2.IsSubclassOf(typeof(ElementInfo)) && !(t2 == typeof(ViewportInfo) || t2.IsSubclassOf(typeof(ViewportInfo))))
                {
                    return(DragDropEffects.None);
                }
            }
            return(DragDropEffects.Move);
        }