public void ShowDetailsOfListViewItem(ListViewItem item) { if (item == null) { lbl_StatusValue.Text = Constants.N_PER_A; lbl_TypeValue.Text = Constants.N_PER_A; lbl_TotalSavedFilesValue.Text = Constants.N_PER_A; lbl_TotalRecordingLengthValue.Text = Constants.N_PER_A; lbl_TotalFileSizeValue.Text = Constants.N_PER_A; } else { lbl_StatusValue.Text = item.Checked ? "Recording" : "Not recording"; lbl_TypeValue.Text = ((ExtensionInfo)item.Tag).Type; int total_saved_files_number; TimeSpan total_recording_length; long total_file_size; var file_list = presenter.GetFileList(item, out total_saved_files_number, out total_recording_length, out total_file_size); InvokeGUI(() => lv_Files.Items.Clear()); foreach (var list_view_item in file_list) { var my_item = list_view_item; InvokeGUI(() => lv_Files.Items.Add(my_item)); } lbl_TotalSavedFilesValue.Text = total_saved_files_number.ToString(); lbl_TotalRecordingLengthValue.Text = total_recording_length.ToString(); lbl_TotalFileSizeValue.Text = (total_file_size / Constants.DIVIDER).ToString("N2"); } }