瀏覽代碼

Fixed null exception on Row movement header

Kenric Nugteren 1 年之前
父節點
當前提交
7e6d5ada9b
共有 1 個文件被更改,包括 6 次插入4 次删除
  1. 6 4
      inabox.wpf/DynamicGrid/DynamicRowMovementColumn.cs

+ 6 - 4
inabox.wpf/DynamicGrid/DynamicRowMovementColumn.cs

@@ -29,26 +29,28 @@ namespace InABox.DynamicGrid
 
         public DynamicRowMovement Direction { get; }
 
-        private bool IsFirst(CoreRow row)
+        private static bool IsFirst(CoreRow? row)
         {
             return row != null && row.Table.Rows.First() == row; // (row.Index == 0);
         }
 
-        private bool IsLast(CoreRow row)
+        private static bool IsLast(CoreRow? row)
         {
             return row != null && row.Table.Rows.Last() == row; //(row.Index == row.Table.Rows.Count - 1);
         }
 
 
-        private BitmapImage GetImage(CoreRow row)
+        private BitmapImage? GetImage(CoreRow? row)
         {
             if (Direction.Equals(DynamicRowMovement.Up))
                 return IsFirst(row) ? null : uparrow;
             return IsLast(row) ? null : downarrow;
         }
 
-        private bool MoveRow(CoreRow row)
+        private bool MoveRow(CoreRow? row)
         {
+            if (row is null) return false;
+
             var tgt = row.Index + (Direction.Equals(DynamicRowMovement.Up) ? -1 : 1);
             if (tgt > -1 && tgt < row.Table.Rows.Count)
                 return Swap(row.Index, tgt);