private void listViewContents_ItemSelectionChanged(object sender, ListViewItemSelectionChangedEventArgs e) { // If this item is newly selected, load the file associated with it. if (e.IsSelected) { _controller.SelectFile(e.Item.Text); } // If this item is being unselected, then save it if necessary. else if (_controller.ContentsHaveChanged()) { _model.CurrentContents = Contents; _model.SaveFile(e.Item.Text); _model.LoadFiles(); } }