Index: branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/RefreshableRoleListView.Designer.cs
===================================================================
--- branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/RefreshableRoleListView.Designer.cs	(revision 15943)
+++ branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/RefreshableRoleListView.Designer.cs	(revision 16240)
@@ -66,5 +66,5 @@
       // 
       this.storeButton.Enabled = false;
-      this.storeButton.Image = HeuristicLab.Common.Resources.VSImageLibrary.PublishToWeb;
+      this.storeButton.Image = HeuristicLab.Common.Resources.VSImageLibrary.Save;
       this.storeButton.Location = new System.Drawing.Point(33, 3);
       this.storeButton.Name = "storeButton";
Index: branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/RefreshableRoleSelectionListView.Designer.cs
===================================================================
--- branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/RefreshableRoleSelectionListView.Designer.cs	(revision 15943)
+++ branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/RefreshableRoleSelectionListView.Designer.cs	(revision 16240)
@@ -53,5 +53,5 @@
       // 
       this.storeButton.Enabled = false;
-      this.storeButton.Image = HeuristicLab.Common.Resources.VSImageLibrary.PublishToWeb;
+      this.storeButton.Image = HeuristicLab.Common.Resources.VSImageLibrary.Save;
       this.storeButton.Location = new System.Drawing.Point(33, 3);
       this.storeButton.Name = "storeButton";
Index: branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/RefreshableUserGroupListView.Designer.cs
===================================================================
--- branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/RefreshableUserGroupListView.Designer.cs	(revision 15943)
+++ branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/RefreshableUserGroupListView.Designer.cs	(revision 16240)
@@ -66,5 +66,5 @@
       // 
       this.storeButton.Enabled = false;
-      this.storeButton.Image = HeuristicLab.Common.Resources.VSImageLibrary.PublishToWeb;
+      this.storeButton.Image = HeuristicLab.Common.Resources.VSImageLibrary.Save;
       this.storeButton.Location = new System.Drawing.Point(33, 3);
       this.storeButton.Name = "storeButton";
Index: branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/RefreshableUserListView.Designer.cs
===================================================================
--- branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/RefreshableUserListView.Designer.cs	(revision 15943)
+++ branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/RefreshableUserListView.Designer.cs	(revision 16240)
@@ -66,5 +66,5 @@
       this.storeButton.Enabled = false;
       this.storeButton.Location = new System.Drawing.Point(33, 3);
-      this.storeButton.Image = HeuristicLab.Common.Resources.VSImageLibrary.PublishToWeb;
+      this.storeButton.Image = HeuristicLab.Common.Resources.VSImageLibrary.Save;
       this.storeButton.Name = "storeButton";
       this.storeButton.Size = new System.Drawing.Size(24, 24);
Index: branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/RoleListView.cs
===================================================================
--- branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/RoleListView.cs	(revision 15943)
+++ branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/RoleListView.cs	(revision 16240)
@@ -29,5 +29,5 @@
   [View("RoleList View")]
   [Content(typeof(IItemList<Role>), true)]
-  public partial class RoleListView : ItemListView<Role> {
+  public partial class RoleListView : ItemCollectionView<Role> {
     public RoleListView() {
       InitializeComponent();
Index: branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/UserGroupListView.cs
===================================================================
--- branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/UserGroupListView.cs	(revision 15943)
+++ branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/UserGroupListView.cs	(revision 16240)
@@ -29,5 +29,5 @@
   [View("UserGroupList View")]
   [Content(typeof(IItemList<UserGroup>), true)]
-  public partial class UserGroupListView : ItemListView<UserGroup> {
+  public partial class UserGroupListView : ItemCollectionView<UserGroup> {
     public UserGroupListView() {
       InitializeComponent();
Index: branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/UserGroupView.Designer.cs
===================================================================
--- branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/UserGroupView.Designer.cs	(revision 15943)
+++ branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/UserGroupView.Designer.cs	(revision 16240)
@@ -49,5 +49,5 @@
       this.groupNameTextBox = new System.Windows.Forms.TextBox();
       this.idTextBox = new System.Windows.Forms.TextBox();
-      this.refreshableLightweightUserView = new HeuristicLab.Clients.Access.Views.RefreshableLightweightUserView();
+      this.refreshableLightweightUserView = new HeuristicLab.Clients.Access.Views.RefreshableLightweightAccessClientView();
       this.storeButton = new System.Windows.Forms.Button();
       this.SuspendLayout();
@@ -85,5 +85,5 @@
       this.idTextBox.Anchor = ((System.Windows.Forms.AnchorStyles)(((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Left)
                   | System.Windows.Forms.AnchorStyles.Right)));
-      this.idTextBox.Enabled = false;
+      this.idTextBox.ReadOnly = true;
       this.idTextBox.Location = new System.Drawing.Point(79, 29);
       this.idTextBox.Name = "idTextBox";
@@ -108,5 +108,5 @@
       // 
       this.storeButton.Enabled = false;
-      this.storeButton.Image = HeuristicLab.Common.Resources.VSImageLibrary.PublishToWeb;
+      this.storeButton.Image = HeuristicLab.Common.Resources.VSImageLibrary.Save;
       this.storeButton.Location = new System.Drawing.Point(31, 58);
       this.storeButton.Name = "storeButton";
@@ -139,5 +139,5 @@
     private System.Windows.Forms.TextBox groupNameTextBox;
     private System.Windows.Forms.TextBox idTextBox;
-    private Views.RefreshableLightweightUserView refreshableLightweightUserView;
+    private Views.RefreshableLightweightAccessClientView refreshableLightweightUserView;
     private System.Windows.Forms.Button storeButton;
   }
Index: branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/UserGroupView.cs
===================================================================
--- branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/UserGroupView.cs	(revision 15943)
+++ branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/UserGroupView.cs	(revision 16240)
@@ -40,10 +40,10 @@
     protected override void RegisterContentEvents() {
       base.RegisterContentEvents();
-      Access.AccessClient.Instance.Refreshing += new EventHandler(Content_Refreshing);
+      AccessClient.Instance.Refreshing += new EventHandler(Content_Refreshing);
       refreshableLightweightUserView.StorableStateChanged += new EventHandler(refreshableLightweightUserView_StorableStateChanged);
     }
 
     protected override void DeregisterContentEvents() {
-      Access.AccessClient.Instance.Refreshing -= new EventHandler(Content_Refreshing);
+      AccessClient.Instance.Refreshing -= new EventHandler(Content_Refreshing);
       refreshableLightweightUserView.StorableStateChanged -= new EventHandler(refreshableLightweightUserView_StorableStateChanged);
       base.DeregisterContentEvents();
@@ -63,12 +63,23 @@
         idTextBox.Text = Content.Id.ToString();
 
-        refreshableLightweightUserView.Content = Content.Id != Guid.Empty ? Access.AccessClient.Instance : null;
-        refreshableLightweightUserView.FetchSelectedUsers = Content.Id != Guid.Empty ? new Func<List<Guid>>(delegate { return AccessAdministrationClient.CallAccessService<List<Guid>>(s => s.GetUserGroupIdsOfGroup(Content.Id)); }) : null;
+        refreshableLightweightUserView.Content = Content.Id != Guid.Empty ? AccessClient.Instance : null;
+        refreshableLightweightUserView.FetchSelectedUsers = Content.Id != Guid.Empty ? new Func<List<Guid>>(delegate { return AccessAdministrationClient.CallAccessService(s => s.GetUserGroupIdsOfGroup(Content.Id)); }) : null;
       }
     }
 
-    private void groupNameTextBox_TextChanged(object sender, System.EventArgs e) {
-      if (Content.Name != this.groupNameTextBox.Text)
-        Content.Name = this.groupNameTextBox.Text;
+    protected override void SetEnabledStateOfControls() {
+      base.SetEnabledStateOfControls();
+      bool enabled = Content != null && !Locked;
+      groupNameTextBox.ReadOnly = !enabled;
+      idTextBox.ReadOnly = !enabled;
+      storeButton.Enabled = enabled;
+      //refreshableLightweightUserView.Enabled = enabled;
+      refreshableLightweightUserView.Locked = !enabled;
+      //refreshableLightweightUserView.ReadOnly = !enabled;
+    }
+
+    private void groupNameTextBox_TextChanged(object sender, EventArgs e) {
+      if (Content != null && Content.Name != groupNameTextBox.Text)
+        Content.Name = groupNameTextBox.Text;
     }
 
@@ -91,9 +102,9 @@
 
     private void Content_Refreshing(object sender, EventArgs e) {
-      storeButton.Enabled = false;
+      if (!Locked) storeButton.Enabled = false;
     }
 
     private void refreshableLightweightUserView_StorableStateChanged(object sender, EventArgs e) {
-      storeButton.Enabled = true;
+      if (!Locked) storeButton.Enabled = true;
     }
   }
Index: branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/UserListView.cs
===================================================================
--- branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/UserListView.cs	(revision 15943)
+++ branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/UserListView.cs	(revision 16240)
@@ -29,5 +29,5 @@
   [View("UserList View")]
   [Content(typeof(IItemList<User>), true)]
-  public partial class UserListView : ItemListView<User> {
+  public partial class UserListView : ItemCollectionView<User> {
     public UserListView() {
       InitializeComponent();
Index: branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/UserView.cs
===================================================================
--- branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/UserView.cs	(revision 15943)
+++ branches/2915-AbsoluteSymbol/HeuristicLab.Clients.Access.Administration/3.3/Views/UserView.cs	(revision 16240)
@@ -64,4 +64,10 @@
     protected override void SetEnabledStateOfControls() {
       base.SetEnabledStateOfControls();
+      bool enabled = Content != null && !Locked;
+      
+      userNameTextBox.ReadOnly = !enabled;
+      fullNameTextBox.ReadOnly = !enabled;
+      emailTextBox.ReadOnly = !enabled;
+
       if (Content == null) {
         resetPasswordButton.Enabled = false;
