Index: trunk/sources/HeuristicLab.Problems.Knapsack.Views/3.3/KnapsackSolutionView.cs
===================================================================
--- trunk/sources/HeuristicLab.Problems.Knapsack.Views/3.3/KnapsackSolutionView.cs	(revision 3648)
+++ trunk/sources/HeuristicLab.Problems.Knapsack.Views/3.3/KnapsackSolutionView.cs	(revision 3649)
@@ -50,4 +50,5 @@
       Content.WeightsChanged -= new EventHandler(Content_WeightsChanged);
       Content.ValuesChanged -= new EventHandler(Content_ValuesChanged);
+      Content.QualityChanged -= new EventHandler(Content_QualityChanged);
       base.DeregisterContentEvents();
     }
@@ -59,4 +60,5 @@
       Content.WeightsChanged += new EventHandler(Content_WeightsChanged);
       Content.ValuesChanged += new EventHandler(Content_ValuesChanged);
+      Content.QualityChanged += new EventHandler(Content_QualityChanged);
     }
 
@@ -64,4 +66,11 @@
       if (InvokeRequired)
         Invoke(new EventHandler(Content_BinaryVectorChanged), sender, e);
+      else
+        GenerateImage();
+    }
+
+    void Content_QualityChanged(object sender, EventArgs e) {
+      if (InvokeRequired)
+        Invoke(new EventHandler(Content_QualityChanged), sender, e);
       else
         GenerateImage();
Index: trunk/sources/HeuristicLab.Problems.OneMax.Views/3.3/OneMaxSolutionView.cs
===================================================================
--- trunk/sources/HeuristicLab.Problems.OneMax.Views/3.3/OneMaxSolutionView.cs	(revision 3648)
+++ trunk/sources/HeuristicLab.Problems.OneMax.Views/3.3/OneMaxSolutionView.cs	(revision 3649)
@@ -48,4 +48,33 @@
     }
 
+    protected override void DeregisterContentEvents() {
+      Content.BinaryVectorChanged -= new EventHandler(Content_BinaryVectorChanged);
+      Content.QualityChanged -= new EventHandler(Content_QualityChanged);
+      base.DeregisterContentEvents();
+    }
+    protected override void RegisterContentEvents() {
+      base.RegisterContentEvents();
+      Content.BinaryVectorChanged += new EventHandler(Content_BinaryVectorChanged);
+      Content.QualityChanged += new EventHandler(Content_QualityChanged);
+    }
+
+    void Content_QualityChanged(object sender, EventArgs e) {
+      if (InvokeRequired)
+        Invoke(new EventHandler(Content_QualityChanged), sender, e);
+      else {
+        qualityView.ViewType = null;
+        qualityView.Content = Content.Quality;
+      }
+    }
+
+    void Content_BinaryVectorChanged(object sender, EventArgs e) {
+      if (InvokeRequired)
+        Invoke(new EventHandler(Content_QualityChanged), sender, e);
+      else {
+        binaryVectorView.ViewType = null;
+        binaryVectorView.Content = Content.BinaryVector;
+      }
+    }
+
     protected override void OnContentChanged() {
       base.OnContentChanged();
Index: trunk/sources/HeuristicLab.Problems.TestFunctions.Views/3.3/SingleObjectiveTestFunctionSolutionView.cs
===================================================================
--- trunk/sources/HeuristicLab.Problems.TestFunctions.Views/3.3/SingleObjectiveTestFunctionSolutionView.cs	(revision 3648)
+++ trunk/sources/HeuristicLab.Problems.TestFunctions.Views/3.3/SingleObjectiveTestFunctionSolutionView.cs	(revision 3649)
@@ -48,4 +48,33 @@
     }
 
+    protected override void DeregisterContentEvents() {
+      Content.RealVectorChanged -= new EventHandler(Content_RealVectorChanged);
+      Content.QualityChanged -= new EventHandler(Content_QualityChanged);
+      base.DeregisterContentEvents();
+    }
+    protected override void RegisterContentEvents() {
+      base.RegisterContentEvents();
+      Content.RealVectorChanged += new EventHandler(Content_RealVectorChanged);
+      Content.QualityChanged += new EventHandler(Content_QualityChanged);
+    }
+
+    void Content_QualityChanged(object sender, EventArgs e) {
+      if (InvokeRequired)
+        Invoke(new EventHandler(Content_QualityChanged), sender, e);
+      else {
+        qualityView.ViewType = null;
+        qualityView.Content = Content.Quality;
+      }
+    }
+
+    void Content_RealVectorChanged(object sender, EventArgs e) {
+      if (InvokeRequired)
+        Invoke(new EventHandler(Content_QualityChanged), sender, e);
+      else {
+        realVectorView.ViewType = null;
+        realVectorView.Content = Content.RealVector;
+      }
+    }
+
     protected override void OnContentChanged() {
       base.OnContentChanged();
