Index: /branches/DataAnalysis Refactoring/HeuristicLab.Core/3.3/HeuristicLab.Core-3.3.csproj
===================================================================
--- /branches/DataAnalysis Refactoring/HeuristicLab.Core/3.3/HeuristicLab.Core-3.3.csproj	(revision 5581)
+++ /branches/DataAnalysis Refactoring/HeuristicLab.Core/3.3/HeuristicLab.Core-3.3.csproj	(revision 5582)
@@ -20,5 +20,6 @@
     <IsWebBootstrapper>true</IsWebBootstrapper>
     <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
-    <TargetFrameworkProfile></TargetFrameworkProfile>
+    <TargetFrameworkProfile>
+    </TargetFrameworkProfile>
     <PublishUrl>http://localhost/HeuristicLab.Core/</PublishUrl>
     <Install>true</Install>
@@ -145,4 +146,5 @@
     <Compile Include="Constraints\TypeCompatibilityConstraint.cs" />
     <Compile Include="Interfaces\IMultiOperator.cs" />
+    <Compile Include="Interfaces\IFixedValueParameter.cs" />
     <Compile Include="OperatorExecutionException.cs" />
     <Compile Include="Interfaces\IScopeTreeLookupParameter.cs" />
Index: /branches/DataAnalysis Refactoring/HeuristicLab.Core/3.3/Interfaces/IFixedValueParameter.cs
===================================================================
--- /branches/DataAnalysis Refactoring/HeuristicLab.Core/3.3/Interfaces/IFixedValueParameter.cs	(revision 5582)
+++ /branches/DataAnalysis Refactoring/HeuristicLab.Core/3.3/Interfaces/IFixedValueParameter.cs	(revision 5582)
@@ -0,0 +1,31 @@
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * HeuristicLab is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+namespace HeuristicLab.Core {
+  public interface IFixedValueParameter : IValueParameter {
+    new IItem Value { get; }
+    new IItem ActualValue { get; }
+  }
+
+  public interface IFixedValueParameter<T> : IFixedValueParameter, IValueParameter<T> where T : class, IItem {
+    new T Value { get; }
+  }
+}
Index: /branches/DataAnalysis Refactoring/HeuristicLab.Parameters.Views/3.3/ValueParameterView.cs
===================================================================
--- /branches/DataAnalysis Refactoring/HeuristicLab.Parameters.Views/3.3/ValueParameterView.cs	(revision 5581)
+++ /branches/DataAnalysis Refactoring/HeuristicLab.Parameters.Views/3.3/ValueParameterView.cs	(revision 5582)
@@ -103,6 +103,6 @@
     protected override void SetEnabledStateOfControls() {
       base.SetEnabledStateOfControls();
-      setValueButton.Enabled = Content != null && !ReadOnly;
-      clearValueButton.Enabled = Content != null && Content.Value != null && !(Content is ValueParameter<T>) && !ReadOnly;
+      setValueButton.Enabled = Content != null && !(Content is IFixedValueParameter) && !ReadOnly;
+      clearValueButton.Enabled = Content != null && Content.Value != null && !(Content is IFixedValueParameter) && !ReadOnly;
       showInRunCheckBox.Enabled = Content != null && !ReadOnly;
     }
@@ -113,5 +113,6 @@
       else {
         SetDataTypeTextBoxText();
-        clearValueButton.Enabled = Content != null && Content.Value != null && !(Content is ValueParameter<T>) && !ReadOnly;
+        setValueButton.Enabled = Content != null && !(Content is IFixedValueParameter) && !ReadOnly;
+        clearValueButton.Enabled = Content != null && Content.Value != null && !(Content is IFixedValueParameter<T>) && !ReadOnly;
         valueViewHost.ViewType = null;
         valueViewHost.Content = Content != null ? Content.Value : null;
@@ -148,4 +149,6 @@
     protected virtual void valueGroupBox_DragEnterOver(object sender, DragEventArgs e) {
       e.Effect = DragDropEffects.None;
+      if (Content is IFixedValueParameter) return;
+
       Type type = e.Data.GetData("Type") as Type;
       if (!ReadOnly && (type != null) && (Content.DataType.IsAssignableFrom(type))) {
Index: /branches/DataAnalysis Refactoring/HeuristicLab.Parameters/3.3/FixedValueParameter.cs
===================================================================
--- /branches/DataAnalysis Refactoring/HeuristicLab.Parameters/3.3/FixedValueParameter.cs	(revision 5582)
+++ /branches/DataAnalysis Refactoring/HeuristicLab.Parameters/3.3/FixedValueParameter.cs	(revision 5582)
@@ -0,0 +1,59 @@
+﻿#region License Information
+/* HeuristicLab
+ * Copyright (C) 2002-2011 Heuristic and Evolutionary Algorithms Laboratory (HEAL)
+ *
+ * This file is part of HeuristicLab.
+ *
+ * HeuristicLab is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * HeuristicLab is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with HeuristicLab. If not, see <http://www.gnu.org/licenses/>.
+ */
+#endregion
+
+using System;
+using HeuristicLab.Common;
+using HeuristicLab.Core;
+using HeuristicLab.Persistence.Default.CompositeSerializers.Storable;
+
+namespace HeuristicLab.Parameters {
+  /// <summary>
+  /// A parameter whose value is defined in the parameter itself.
+  /// </summary>
+  [Item("FixedValueParameter", "A parameter whose value is defined in the parameter itself and cannot be set.")]
+  [StorableClass]
+  public class FixedValueParameter<T> : ValueParameter<T>, IFixedValueParameter where T : class,IItem {
+
+    public override T Value {
+      get { return base.Value; }
+      set { throw new NotSupportedException("FixedValueParameters do not support setting their value."); }
+    }
+
+    IItem IFixedValueParameter.Value { get { return Value; } }
+
+    [StorableConstructor]
+    protected FixedValueParameter(bool deserializing) : base(deserializing) { }
+    protected FixedValueParameter(FixedValueParameter<T> original, Cloner cloner) : base(original, cloner) { }
+
+    public FixedValueParameter(string name) : base(name, default(T)) { }
+    public FixedValueParameter(string name, bool getsCollected) : base(name, default(T), getsCollected) { }
+    public FixedValueParameter(string name, T value) : base(name, value) { }
+    public FixedValueParameter(string name, T value, bool getsCollected) : base(name, value, getsCollected) { }
+    public FixedValueParameter(string name, string description) : base(name, description, default(T)) { }
+    public FixedValueParameter(string name, string description, bool getsCollected) : base(name, description, default(T), getsCollected) { }
+    public FixedValueParameter(string name, string description, T value) : base(name, description, value) { }
+    public FixedValueParameter(string name, string description, T value, bool getsCollected) : base(name, description, value, getsCollected) { }
+
+    public override IDeepCloneable Clone(Cloner cloner) {
+      return new FixedValueParameter<T>(this, cloner);
+    }
+  }
+}
Index: /branches/DataAnalysis Refactoring/HeuristicLab.Parameters/3.3/HeuristicLab.Parameters-3.3.csproj
===================================================================
--- /branches/DataAnalysis Refactoring/HeuristicLab.Parameters/3.3/HeuristicLab.Parameters-3.3.csproj	(revision 5581)
+++ /branches/DataAnalysis Refactoring/HeuristicLab.Parameters/3.3/HeuristicLab.Parameters-3.3.csproj	(revision 5582)
@@ -12,5 +12,6 @@
     <AssemblyName>HeuristicLab.Parameters-3.3</AssemblyName>
     <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
-    <TargetFrameworkProfile></TargetFrameworkProfile>
+    <TargetFrameworkProfile>
+    </TargetFrameworkProfile>
     <FileAlignment>512</FileAlignment>
     <SignAssembly>true</SignAssembly>
@@ -112,4 +113,5 @@
     <None Include="HeuristicLabParametersPlugin.cs.frame" />
     <Compile Include="ConstrainedValueParameter.cs" />
+    <Compile Include="FixedValueParameter.cs" />
     <Compile Include="OptionalConstrainedValueParameter.cs" />
     <Compile Include="ScopeTreeLookupParameter.cs" />
