private void libraryList_ColumnClick(object sender, ColumnClickEventArgs e) { var fieldName = new[] { "Artist", "Album", "Song" }[e.Column]; var valueDialog = new BatchEditDialog(fieldName); valueDialog.ShowDialog(this); if (valueDialog.Accepted) { var value = valueDialog.Value; switch (e.Column) { case 0: SelectedLibraryTunes.ToList().ForEach(t => t.Artist = value); break; case 1: SelectedLibraryTunes.ToList().ForEach(t => t.Album = value); break; case 2: SelectedLibraryTunes.ToList().ForEach(t => t.Name = value); break; default: throw new Exception("What column is this?!"); } } UpdateLibrary(); library.Save(); }