Index: /branches/DataPreprocessing/HeuristicLab.DataPreprocessing.Views/3.4/DataGridContentView.cs
===================================================================
--- /branches/DataPreprocessing/HeuristicLab.DataPreprocessing.Views/3.4/DataGridContentView.cs	(revision 10933)
+++ /branches/DataPreprocessing/HeuristicLab.DataPreprocessing.Views/3.4/DataGridContentView.cs	(revision 10934)
@@ -36,4 +36,5 @@
     private bool notOwnEvent = true;
     private bool isSearching = false;
+    private bool updateOnMouseUp = false;
     private SearchAndReplaceDialog findAndReplaceDialog;
     private IFindPreprocessingItemsIterator searchIterator;
@@ -70,4 +71,5 @@
       dataGridView.CellPainting += new System.Windows.Forms.DataGridViewCellPaintingEventHandler(dataGridView_CellPainting);
       dataGridView.KeyDown += dataGridView_KeyDown;
+      dataGridView.MouseUp += dataGridView_MouseUp;
       contextMenuCell.Items.Add(ShowHideColumns);
       _highlightedRowIndices = new List<int>();
@@ -79,9 +81,24 @@
       if (Content != null) {
         if (!isSearching) {
+
+          if (Control.MouseButtons == MouseButtons.Left) {
+            updateOnMouseUp = true;
+            return;
+          }
+           
           base.dataGridView_SelectionChanged(sender, e);
+       
           Content.DataGridLogic.SetSelection(GetSelectedCells());
         }
       }
     }
+
+    private void dataGridView_MouseUp(object sender, MouseEventArgs e) {
+      if (!updateOnMouseUp) 
+        return;
+
+      updateOnMouseUp = false;
+      dataGridView_SelectionChanged(sender, e);
+    }                                     
 
     protected override void OnContentChanged() {
Index: /branches/DataPreprocessing/HeuristicLab.DataPreprocessing.Views/3.4/DataPreprocessingView.cs
===================================================================
--- /branches/DataPreprocessing/HeuristicLab.DataPreprocessing.Views/3.4/DataPreprocessingView.cs	(revision 10933)
+++ /branches/DataPreprocessing/HeuristicLab.DataPreprocessing.Views/3.4/DataPreprocessingView.cs	(revision 10934)
@@ -54,6 +54,5 @@
         //var correlationMatrixLogic = new ChartLogic(data);
         var filterLogic = new FilterLogic(data);
-        var creator = new ProblemDataCreator(Content);
-        var problemData = (DataAnalysisProblemData)creator.CreateProblemData();
+       
         //var dataCompletenessLogic = new ChartLogic(data);
 
@@ -65,5 +64,5 @@
           new HistogramContent(chartLogic),
           new ScatterPlotContent(chartLogic),
-          new CorrelationMatrixContent(problemData),
+          new CorrelationMatrixContent(Content),
           new DataCompletenessChartContent(dataGridLogic, searchLogic),
           
Index: /branches/DataPreprocessing/HeuristicLab.DataPreprocessing.Views/3.4/PreprocessingFeatureCorrelationView.cs
===================================================================
--- /branches/DataPreprocessing/HeuristicLab.DataPreprocessing.Views/3.4/PreprocessingFeatureCorrelationView.cs	(revision 10933)
+++ /branches/DataPreprocessing/HeuristicLab.DataPreprocessing.Views/3.4/PreprocessingFeatureCorrelationView.cs	(revision 10934)
@@ -66,6 +66,8 @@
     }
 
+
     protected override void RegisterContentEvents() {
       base.RegisterContentEvents();
+      Content.PreprocessingData.Changed += Data_Changed;
       fcc.ProgressCalculation += new FeatureCorrelationCalculator.ProgressCalculationHandler(Content_ProgressCalculation);
       fcc.CorrelationCalculationFinished += new FeatureCorrelationCalculator.CorrelationCalculationFinishedHandler(Content_CorrelationCalculationFinished);
@@ -73,7 +75,12 @@
 
     protected override void DeregisterContentEvents() {
+      Content.PreprocessingData.Changed -= Data_Changed;
       fcc.CorrelationCalculationFinished -= new FeatureCorrelationCalculator.CorrelationCalculationFinishedHandler(Content_CorrelationCalculationFinished);
       fcc.ProgressCalculation -= new FeatureCorrelationCalculator.ProgressCalculationHandler(Content_ProgressCalculation);
       base.DeregisterContentEvents();
+    }
+
+    private void Data_Changed(object sender, DataPreprocessingChangedEventArgs e) {
+      OnContentChanged();
     }
 
Index: /branches/DataPreprocessing/HeuristicLab.DataPreprocessing/3.4/Implementations/CorrelationMatrixContent.cs
===================================================================
--- /branches/DataPreprocessing/HeuristicLab.DataPreprocessing/3.4/Implementations/CorrelationMatrixContent.cs	(revision 10933)
+++ /branches/DataPreprocessing/HeuristicLab.DataPreprocessing/3.4/Implementations/CorrelationMatrixContent.cs	(revision 10934)
@@ -29,8 +29,23 @@
   [Item("Feature Correlation Matrix", "Represents the feature correlation matrix.")]
   public class CorrelationMatrixContent : Item, IViewShortcut {
-    public DataAnalysisProblemData ProblemData { get; set; }
 
-    public CorrelationMatrixContent(DataAnalysisProblemData data) {
-      ProblemData = data;
+    public DataAnalysisProblemData ProblemData {
+      get {
+        var creator = new ProblemDataCreator(Context);
+        return (DataAnalysisProblemData)creator.CreateProblemData();
+      } 
+    }
+
+    public ITransactionalPreprocessingData PreprocessingData { 
+      get {
+        return Context.Data;
+      } 
+    }
+
+    private IPreprocessingContext Context { get; set; }
+    public CorrelationMatrixContent(IPreprocessingContext context) {
+      Context = context;
+
+
     }
 
@@ -47,4 +62,9 @@
       return new CorrelationMatrixContent(this, cloner);
     }
+
+    public event DataPreprocessingChangedEventHandler Changed {
+      add { PreprocessingData.Changed += value; }
+      remove { PreprocessingData.Changed -= value; }
+    }
   }
 }
