|
@@ -1,10 +1,14 @@
|
|
|
|
+using System.Drawing;
|
|
using System.Windows.Media.Imaging;
|
|
using System.Windows.Media.Imaging;
|
|
using InABox.Core;
|
|
using InABox.Core;
|
|
|
|
+using InABox.WPF;
|
|
|
|
|
|
namespace InABox.DynamicGrid;
|
|
namespace InABox.DynamicGrid;
|
|
|
|
|
|
public class DynamicImageColumn : DynamicActionColumn
|
|
public class DynamicImageColumn : DynamicActionColumn
|
|
{
|
|
{
|
|
|
|
+ private static readonly BitmapImage empty = new Bitmap(32, 32).ToBitmapImage();
|
|
|
|
+
|
|
public delegate BitmapImage? GetImageDelegate(CoreRow? row);
|
|
public delegate BitmapImage? GetImageDelegate(CoreRow? row);
|
|
|
|
|
|
public DynamicImageColumn(GetImageDelegate image, ActionDelegate? action = null)
|
|
public DynamicImageColumn(GetImageDelegate image, ActionDelegate? action = null)
|
|
@@ -25,5 +29,5 @@ public class DynamicImageColumn : DynamicActionColumn
|
|
|
|
|
|
public bool AllowHeaderClick { get; set; } = false;
|
|
public bool AllowHeaderClick { get; set; } = false;
|
|
|
|
|
|
- public override object? Data(CoreRow? row) => Image?.Invoke(row);
|
|
|
|
|
|
+ public override object? Data(CoreRow? row) => Image?.Invoke(row) ?? empty;
|
|
}
|
|
}
|