Index: /branches/OKB (trunk integration)/HeuristicLab.Clients.OKB/3.3/RunCreation/Views/OKBExperimentUploadView.Designer.cs
===================================================================
--- /branches/OKB (trunk integration)/HeuristicLab.Clients.OKB/3.3/RunCreation/Views/OKBExperimentUploadView.Designer.cs	(revision 7843)
+++ /branches/OKB (trunk integration)/HeuristicLab.Clients.OKB/3.3/RunCreation/Views/OKBExperimentUploadView.Designer.cs	(revision 7844)
@@ -36,4 +36,5 @@
       this.contextMenu = new System.Windows.Forms.ContextMenuStrip(this.components);
       this.setColumnToThisValueToolStripMenuItem = new System.Windows.Forms.ToolStripMenuItem();
+      this.clearButton = new System.Windows.Forms.Button();
       ((System.ComponentModel.ISupportInitialize)(this.dataGridView)).BeginInit();
       this.contextMenu.SuspendLayout();
@@ -71,4 +72,5 @@
             this.ProblemTypeColumn,
             this.OKBProblemColumn});
+      this.dataGridView.EditMode = System.Windows.Forms.DataGridViewEditMode.EditOnEnter;
       this.dataGridView.Location = new System.Drawing.Point(3, 3);
       this.dataGridView.Name = "dataGridView";
@@ -137,4 +139,15 @@
       this.setColumnToThisValueToolStripMenuItem.Click += new System.EventHandler(this.setColumnToThisValueToolStripMenuItem_Click);
       // 
+      // clearButton
+      // 
+      this.clearButton.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Bottom | System.Windows.Forms.AnchorStyles.Right)));
+      this.clearButton.Location = new System.Drawing.Point(387, 199);
+      this.clearButton.Name = "clearButton";
+      this.clearButton.Size = new System.Drawing.Size(75, 23);
+      this.clearButton.TabIndex = 3;
+      this.clearButton.Text = "Clear Runs";
+      this.clearButton.UseVisualStyleBackColor = true;
+      this.clearButton.Click += new System.EventHandler(this.clearButton_Click);
+      // 
       // OKBExperimentUploadView
       // 
@@ -142,4 +155,5 @@
       this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);
       this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
+      this.Controls.Add(this.clearButton);
       this.Controls.Add(this.dataGridView);
       this.Controls.Add(this.btnUpload);
@@ -165,4 +179,5 @@
     private System.Windows.Forms.ContextMenuStrip contextMenu;
     private System.Windows.Forms.ToolStripMenuItem setColumnToThisValueToolStripMenuItem;
+    private System.Windows.Forms.Button clearButton;
   }
 }
Index: /branches/OKB (trunk integration)/HeuristicLab.Clients.OKB/3.3/RunCreation/Views/OKBExperimentUploadView.cs
===================================================================
--- /branches/OKB (trunk integration)/HeuristicLab.Clients.OKB/3.3/RunCreation/Views/OKBExperimentUploadView.cs	(revision 7843)
+++ /branches/OKB (trunk integration)/HeuristicLab.Clients.OKB/3.3/RunCreation/Views/OKBExperimentUploadView.cs	(revision 7844)
@@ -69,5 +69,4 @@
       } else {
         AddRuns(Content);
-        DisplayRuns();
       }
     }
@@ -76,10 +75,16 @@
       if (item is Experiment) {
         runs.AddRange((item as Experiment).Runs);
+        DisplayRuns((item as Experiment).Runs);
       } else if (item is RunCollection) {
         runs.AddRange((item as RunCollection));
+        DisplayRuns((item as RunCollection));
       } else if (item is IOptimizer) {
         runs.AddRange((item as IOptimizer).Runs);
+        DisplayRuns((item as IOptimizer).Runs);
       } else if (item is IRun) {
         runs.Add(item as IRun);
+        RunCollection tmp = new RunCollection();
+        tmp.Add(item as IRun);
+        DisplayRuns(tmp);
       }
     }
@@ -101,13 +106,13 @@
     }
 
-    private void DisplayRuns() {
+    private void DisplayRuns(RunCollection runs) {
       if (RunCreationClient.Instance.Algorithms == null || RunCreationClient.Instance.Algorithms.Count() == 0) {
         RunCreationClient.Instance.RefreshAsync(DisplayError);
       } else {
-        CreateUI();
-      }
-    }
-
-    private void CreateUI() {
+        CreateUI(runs);
+      }
+    }
+
+    private void CreateUI(RunCollection runs) {
       if (problems.Count == 0)
         problems.AddRange(RunCreationClient.Instance.Problems);
@@ -128,5 +133,4 @@
       cmbProblem.DisplayMember = "Name";
 
-      dataGridView.Rows.Clear();
       foreach (IRun run in runs) {
         int idx = dataGridView.Rows.Add(run.Name);
@@ -184,6 +188,4 @@
       } else {
         FinishProgressView();
-
-        CreateUI();
         SetEnabledStateOfControls();
       }
@@ -241,4 +243,5 @@
           progressView = null;
           SetEnabledStateOfControls();
+          ClearRuns();
         }
       }
@@ -291,6 +294,9 @@
         if (e.Effect.HasFlag(DragDropEffects.Copy)) optimizer = (IItem)optimizer.Clone();
         AddRuns(optimizer);
-        DisplayRuns();
-      }
+      }
+    }
+
+    private void clearButton_Click(object sender, EventArgs e) {
+      ClearRuns();
     }
   }
