|
@@ -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);
|