Index: /trunk/sources/HeuristicLab.Analysis.Views/3.3/DataTableControl.cs
===================================================================
--- /trunk/sources/HeuristicLab.Analysis.Views/3.3/DataTableControl.cs	(revision 14518)
+++ /trunk/sources/HeuristicLab.Analysis.Views/3.3/DataTableControl.cs	(revision 14519)
@@ -27,21 +27,14 @@
 using System.Windows.Forms.DataVisualization.Charting;
 using HeuristicLab.Collections;
+using HeuristicLab.MainForm.WindowsForms;
 
 namespace HeuristicLab.Analysis.Views {
-  public partial class DataTableControl : UserControl {
+  public partial class DataTableControl : AsynchronousContentView {
     protected List<Series> invisibleSeries;
     protected Dictionary<IObservableList<double>, DataRow> valuesRowsTable;
 
-    private DataTable content;
-    public DataTable Content {
-      get { return content; }
-      set {
-        if (value == content) return;
-        if (content != null) DeregisterContentEvents();
-        content = value;
-        if (content != null) RegisterContentEvents();
-        OnContentChanged();
-        SetEnabledStateOfControls();
-      }
+    public new DataTable Content {
+      get { return (DataTable)base.Content; }
+      set { base.Content = value; }
     }
 
@@ -56,5 +49,5 @@
 
     #region Event Handler Registration
-    protected virtual void DeregisterContentEvents() {
+    protected override void DeregisterContentEvents() {
       foreach (DataRow row in Content.Rows)
         DeregisterDataRowEvents(row);
@@ -65,5 +58,5 @@
       Content.Rows.CollectionReset -= new CollectionItemsChangedEventHandler<DataRow>(Rows_CollectionReset);
     }
-    protected virtual void RegisterContentEvents() {
+    protected override void RegisterContentEvents() {
       Content.VisualPropertiesChanged += new EventHandler(Content_VisualPropertiesChanged);
       Content.Rows.ItemsAdded += new CollectionItemsChangedEventHandler<DataRow>(Rows_ItemsAdded);
@@ -95,5 +88,5 @@
     #endregion
 
-    protected virtual void OnContentChanged() {
+    protected override void OnContentChanged() {
       invisibleSeries.Clear();
       chart.Titles[0].Text = string.Empty;
@@ -111,5 +104,5 @@
     }
 
-    protected virtual void SetEnabledStateOfControls() {
+    protected override void SetEnabledStateOfControls() {
       chart.Enabled = Content != null;
     }
Index: /trunk/sources/HeuristicLab.Analysis.Views/3.3/ScatterPlotControl.cs
===================================================================
--- /trunk/sources/HeuristicLab.Analysis.Views/3.3/ScatterPlotControl.cs	(revision 14518)
+++ /trunk/sources/HeuristicLab.Analysis.Views/3.3/ScatterPlotControl.cs	(revision 14519)
@@ -29,7 +29,8 @@
 using HeuristicLab.Collections;
 using HeuristicLab.Common;
+using HeuristicLab.MainForm.WindowsForms;
 
 namespace HeuristicLab.Analysis.Views {
-  public partial class ScatterPlotControl : UserControl {
+  public partial class ScatterPlotControl : AsynchronousContentView {
     protected List<Series> invisibleSeries;
     protected Dictionary<IObservableList<Point2D<double>>, ScatterPlotDataRow> pointsRowsTable;
@@ -37,15 +38,7 @@
     private double xMin, xMax, yMin, yMax;
 
-    private ScatterPlot content;
-    public ScatterPlot Content {
-      get { return content; }
-      set {
-        if (value == content) return;
-        if (content != null) DeregisterContentEvents();
-        content = value;
-        if (content != null) RegisterContentEvents();
-        OnContentChanged();
-        SetEnabledStateOfControls();
-      }
+    public new ScatterPlot Content {
+      get { return (ScatterPlot)base.Content; }
+      set { base.Content = value; }
     }
 
@@ -61,5 +54,5 @@
 
     #region Event Handler Registration
-    protected virtual void DeregisterContentEvents() {
+    protected override void DeregisterContentEvents() {
       foreach (ScatterPlotDataRow row in Content.Rows)
         DeregisterScatterPlotDataRowEvents(row);
@@ -70,5 +63,5 @@
       Content.Rows.CollectionReset -= new CollectionItemsChangedEventHandler<ScatterPlotDataRow>(Rows_CollectionReset);
     }
-    protected virtual void RegisterContentEvents() {
+    protected override void RegisterContentEvents() {
       Content.VisualPropertiesChanged += new EventHandler(Content_VisualPropertiesChanged);
       Content.Rows.ItemsAdded += new CollectionItemsChangedEventHandler<ScatterPlotDataRow>(Rows_ItemsAdded);
@@ -98,5 +91,5 @@
     #endregion
 
-    protected virtual void OnContentChanged() {
+    protected override void OnContentChanged() {
       invisibleSeries.Clear();
       chart.Titles[0].Text = string.Empty;
@@ -114,5 +107,5 @@
     }
 
-    protected virtual void SetEnabledStateOfControls() {
+    protected override void SetEnabledStateOfControls() {
       chart.Enabled = Content != null;
     }
