Index: TvEngine3/TVLibrary/SetupTv/Sections/ChannelsInGroupControl.cs
===================================================================
--- TvEngine3/TVLibrary/SetupTv/Sections/ChannelsInGroupControl.cs	(revision 27990)
+++ TvEngine3/TVLibrary/SetupTv/Sections/ChannelsInGroupControl.cs	(working copy)
@@ -346,6 +346,16 @@
       }
     }
 
+    private void listView1_ItemChecked(object sender, ItemCheckedEventArgs e)
+    {
+      Channel ch = ((GroupMap)e.Item.Tag).ReferencedChannel();
+      if (ch.VisibleInGuide != e.Item.Checked)
+      {
+        ch.VisibleInGuide = e.Item.Checked;
+        ch.Persist();
+      }
+    }
+
     private void mpButtonPreview_Click(object sender, EventArgs e)
     {
       ListView.SelectedIndexCollection indexes = listView1.SelectedIndices;
Index: TvEngine3/TVLibrary/SetupTv/Sections/ChannelsInGroupControl.Designer.cs
===================================================================
--- TvEngine3/TVLibrary/SetupTv/Sections/ChannelsInGroupControl.Designer.cs	(revision 27990)
+++ TvEngine3/TVLibrary/SetupTv/Sections/ChannelsInGroupControl.Designer.cs	(working copy)
@@ -126,6 +126,8 @@
       this.listView1.SelectedIndexChanged += new System.EventHandler(this.listView1_SelectedIndexChanged);
       this.listView1.ColumnClick += new System.Windows.Forms.ColumnClickEventHandler(this.listView1_ColumnClick);
       this.listView1.ItemDrag += new System.Windows.Forms.ItemDragEventHandler(this.listView1_ItemDrag);
+      this.listView1.AfterLabelEdit += new System.Windows.Forms.LabelEditEventHandler(this.listView1_AfterLabelEdit);
+      this.listView1.ItemChecked += new System.Windows.Forms.ItemCheckedEventHandler(this.listView1_ItemChecked);
       // 
       // columnHeader1
       // 
Index: TvEngine3/TVLibrary/SetupTv/Sections/ChannelsInRadioGroupControl.cs
===================================================================
--- TvEngine3/TVLibrary/SetupTv/Sections/ChannelsInRadioGroupControl.cs	(revision 27990)
+++ TvEngine3/TVLibrary/SetupTv/Sections/ChannelsInRadioGroupControl.cs	(working copy)
@@ -515,6 +515,26 @@
       lvwColumnSorter.Order = SortOrder.None;
     }
 
+    private void listView1_AfterLabelEdit(object sender, LabelEditEventArgs e)
+    {
+      if (e.Label != null)
+      {
+        Channel channel = ((RadioGroupMap)listView1.Items[e.Item].Tag).ReferencedChannel();
+        channel.DisplayName = e.Label;
+        channel.Persist();
+      }
+    }
+
+    private void listView1_ItemChecked(object sender, ItemCheckedEventArgs e)
+    {
+      Channel ch = ((RadioGroupMap)e.Item.Tag).ReferencedChannel();
+      if (ch.VisibleInGuide != e.Item.Checked)
+      {
+        ch.VisibleInGuide = e.Item.Checked;
+        ch.Persist();
+      }
+    }
+
     private void mpButtonOrderByName_Click(object sender, EventArgs e)
     {
       this.listView1_ColumnClick(null, new ColumnClickEventArgs(0));
Index: TvEngine3/TVLibrary/SetupTv/Sections/ChannelsInRadioGroupControl.Designer.cs
===================================================================
--- TvEngine3/TVLibrary/SetupTv/Sections/ChannelsInRadioGroupControl.Designer.cs	(revision 27990)
+++ TvEngine3/TVLibrary/SetupTv/Sections/ChannelsInRadioGroupControl.Designer.cs	(working copy)
@@ -202,6 +202,8 @@
       this.listView1.SelectedIndexChanged += new System.EventHandler(this.listView1_SelectedIndexChanged);
       this.listView1.ColumnClick += new System.Windows.Forms.ColumnClickEventHandler(this.listView1_ColumnClick);
       this.listView1.ItemDrag += new System.Windows.Forms.ItemDragEventHandler(this.listView1_ItemDrag);
+      this.listView1.AfterLabelEdit += new System.Windows.Forms.LabelEditEventHandler(this.listView1_AfterLabelEdit);
+      this.listView1.ItemChecked += new System.Windows.Forms.ItemCheckedEventHandler(this.listView1_ItemChecked);
       // 
       // columnHeader1
       // 
Index: TvEngine3/TVLibrary/SetupTv/Sections/RadioChannels.cs
===================================================================
--- TvEngine3/TVLibrary/SetupTv/Sections/RadioChannels.cs	(revision 27990)
+++ TvEngine3/TVLibrary/SetupTv/Sections/RadioChannels.cs	(working copy)
@@ -91,18 +91,6 @@
 
     public override void OnSectionDeActivated()
     {
-      for (int i = 0; i < mpListView1.Items.Count; ++i)
-      {
-        Channel ch = (Channel)mpListView1.Items[i].Tag;
-        if (ch.SortOrder != i + 1)
-        {
-          ch.SortOrder = i + 1;
-        }
-        ch.VisibleInGuide = mpListView1.Items[i].Checked;
-        ch.Persist();
-      }
-
-      //DatabaseManager.Instance.SaveChanges();
       RemoteControl.Instance.OnNewSchedule();
       base.OnSectionDeActivated();
     }
@@ -404,6 +392,16 @@
       }
     }
 
+    private void mpListView1_ItemChecked(object sender, ItemCheckedEventArgs e)
+    {
+      Channel ch = (Channel)e.Item.Tag;
+      if (ch.VisibleInGuide != e.Item.Checked && !_lvChannelHandler.PopulateRunning)
+      {
+        ch.VisibleInGuide = e.Item.Checked;
+        ch.Persist();
+      }
+    }
+
     private void mpButtonEdit_Click(object sender, EventArgs e)
     {
       ListView.SelectedIndexCollection indexes = mpListView1.SelectedIndices;
Index: TvEngine3/TVLibrary/SetupTv/Sections/RadioChannels.Designer.cs
===================================================================
--- TvEngine3/TVLibrary/SetupTv/Sections/RadioChannels.Designer.cs	(revision 27990)
+++ TvEngine3/TVLibrary/SetupTv/Sections/RadioChannels.Designer.cs	(working copy)
@@ -111,6 +111,7 @@
       this.mpListView1.AfterLabelEdit += new System.Windows.Forms.LabelEditEventHandler(this.mpListView1_AfterLabelEdit);
       this.mpListView1.ColumnClick += new System.Windows.Forms.ColumnClickEventHandler(this.mpListView1_ColumnClick);
       this.mpListView1.ItemDrag += new System.Windows.Forms.ItemDragEventHandler(this.mpListView1_ItemDrag);
+      this.mpListView1.ItemChecked += new System.Windows.Forms.ItemCheckedEventHandler(this.mpListView1_ItemChecked);
       // 
       // hdrhekje
       // 
