Forráskód Böngészése

Added a way to add custom drag drops for dynamic grid and also a DragDropOver event.
Removed redundant line of code in Entity

Kenric Nugteren 1 éve
szülő
commit
eade9aae17
2 módosított fájl, 19 hozzáadás és 3 törlés
  1. 0 1
      InABox.Core/Entity.cs
  2. 19 2
      inabox.wpf/DynamicGrid/DynamicGrid.cs

+ 0 - 1
InABox.Core/Entity.cs

@@ -433,7 +433,6 @@ namespace InABox.Core
             if (!_cache.ContainsKey(typeof(T)))
             {
                 var ctor = typeof(T).GetConstructors().First();
-                var activator = typeof(EntityFactory).GetMethod("GetActivator").MakeGenericMethod(typeof(T));
                 _cache[typeof(T)] = GetActivator<T>(ctor);
             }
 

+ 19 - 2
inabox.wpf/DynamicGrid/DynamicGrid.cs

@@ -409,6 +409,7 @@ namespace InABox.DynamicGrid
             
             DataGrid.AllowDraggingRows = false;
             DataGrid.Drop += DataGrid_Drop;
+            DataGrid.DragOver += DataGrid_DragOver;
             DataGrid.RowDragDropTemplate = TemplateGenerator.CreateDataTemplate(() =>
             {
                 var border = new Border();
@@ -3413,7 +3414,12 @@ namespace InABox.DynamicGrid
         {
             Logger.Send(LogType.Information,"","OnDragEnd");
         }
-        
+
+        private void DataGrid_DragOver(object sender, DragEventArgs e)
+        {
+            HandleDragOver(sender, e);
+        }
+
         private void DataGrid_Drop(object sender, DragEventArgs e)
         {
             Logger.Send(LogType.Information,"","DataGrid_Drop");
@@ -3450,9 +3456,20 @@ namespace InABox.DynamicGrid
 
                     OnDragEnd(data.Entity, table, e);
                     DoChanged();
-
                 }
             }
+            else
+            {
+                HandleDragDrop(sender, e);
+            }
+        }
+
+        protected virtual void HandleDragDrop(object sender, DragEventArgs e)
+        {
+        }
+
+        protected virtual void HandleDragOver(object sender, DragEventArgs e)
+        {
         }
 
         protected DragDropEffects DragTable(Type entity, CoreTable table)