diff --git a/Cavern.QuickEQ/Filters/GraphicEQ.cs b/Cavern.QuickEQ/Filters/GraphicEQ.cs
index 6d605ec..2844797 100644
--- a/Cavern.QuickEQ/Filters/GraphicEQ.cs
+++ b/Cavern.QuickEQ/Filters/GraphicEQ.cs
@@ -1,5 +1,6 @@
using System.Globalization;
using System.Runtime.CompilerServices;
+using System.Runtime.Serialization;
using Cavern.QuickEQ.Equalization;
@@ -24,6 +25,24 @@ public Equalizer Equalizer {
}
Equalizer equalizer;
+ ///
+ /// Get a clone of the 's impulse response.
+ ///
+ [IgnoreDataMember]
+ public new float[] Impulse {
+ get => base.Impulse;
+ set => base.Impulse = value;
+ }
+
+ ///
+ /// Added filter delay to the impulse, in samples.
+ ///
+ [IgnoreDataMember]
+ public new int Delay {
+ get => base.Delay;
+ set => base.Delay = value;
+ }
+
///
/// Sample rate at which this EQ is converted to a minimum-phase FIR filter.
///
diff --git a/CavernSamples/VoidX.WPF/ObjectToDataGrid.cs b/CavernSamples/VoidX.WPF/ObjectToDataGrid.cs
index 7d61203..fed82ef 100644
--- a/CavernSamples/VoidX.WPF/ObjectToDataGrid.cs
+++ b/CavernSamples/VoidX.WPF/ObjectToDataGrid.cs
@@ -4,6 +4,7 @@
using System.Globalization;
using System.Linq;
using System.Reflection;
+using System.Runtime.Serialization;
using System.Windows.Controls;
using FilterStudio;
@@ -122,6 +123,10 @@ public ObjectToDataGrid(object source, Action successCallback, Action
PropertyInfo[] properties = source.GetType().GetProperties();
for (int i = 0; i < properties.Length; i++) {
PropertyInfo property = properties[i];
+ if (property.GetCustomAttribute() != null) {
+ continue;
+ }
+
if (property.SetMethod != null && property.SetMethod.IsPublic) {
(Type type, Action