diff --git a/GBase.Api/GBaseEntryChangedEventArgs.cs b/GBase.Api/GBaseEntryChangedEventArgs.cs
new file mode 100644
index 0000000..4f37669
--- /dev/null
+++ b/GBase.Api/GBaseEntryChangedEventArgs.cs
@@ -0,0 +1,23 @@
+// Author: Gockner, Simon
+// Created: 2020-03-06
+// Copyright(c) 2020 SimonG. All Rights Reserved.
+
+using System;
+
+namespace GBase.Api
+{
+ ///
+ /// for the event
+ ///
+ public class GBaseEntryChangedEventArgs : EventArgs
+ {
+ public GBaseEntryChangedEventArgs(string propertyName, object value)
+ {
+ PropertyName = propertyName;
+ Value = value;
+ }
+
+ public string PropertyName { get; }
+ public object Value { get; }
+ }
+}
\ No newline at end of file
diff --git a/GBase.Api/INotifyGBaseEntryChanged.cs b/GBase.Api/INotifyGBaseEntryChanged.cs
new file mode 100644
index 0000000..220f750
--- /dev/null
+++ b/GBase.Api/INotifyGBaseEntryChanged.cs
@@ -0,0 +1,16 @@
+// Author: Gockner, Simon
+// Created: 2020-03-06
+// Copyright(c) 2020 SimonG. All Rights Reserved.
+
+using System;
+
+namespace GBase.Api
+{
+ ///
+ /// Notify the GBase that an entry has changed
+ ///
+ public interface INotifyGBaseEntryChanged
+ {
+ static event EventHandler GBaseEntryChanged;
+ }
+}
\ No newline at end of file
diff --git a/GBase.Api/NotifyGBaseEntryChanged.cs b/GBase.Api/NotifyGBaseEntryChanged.cs
new file mode 100644
index 0000000..4b17760
--- /dev/null
+++ b/GBase.Api/NotifyGBaseEntryChanged.cs
@@ -0,0 +1,26 @@
+// Author: Gockner, Simon
+// Created: 2020-03-06
+// Copyright(c) 2020 SimonG. All Rights Reserved.
+
+using System;
+
+namespace GBase.Api
+{
+ ///
+ /// Notify the GBase that an entry has changed
+ ///
+ public abstract class NotifyGBaseEntryChanged : INotifyGBaseEntryChanged
+ {
+ public event EventHandler GBaseEntryChanged;
+
+ protected void RaiseGBaseEntryChanged(object sender, string propertyName, object value)
+ {
+ GBaseEntryChanged?.BeginInvoke(sender, new GBaseEntryChangedEventArgs(propertyName, value), GBaseEntryChangedCallback, null);
+ }
+
+ private void GBaseEntryChangedCallback(IAsyncResult asyncResult)
+ {
+ GBaseEntryChanged?.EndInvoke(asyncResult); //TestMe: Does this work? Or is there something to be done with the asyncResult
+ }
+ }
+}
\ No newline at end of file