IntegratedAuthoringToolWF.MainForm.buttonRemoveCharacter_Click C# (CSharp) Method

buttonRemoveCharacter_Click() private method

private buttonRemoveCharacter_Click ( object sender, EventArgs e ) : void
sender object
e EventArgs
return void
        private void buttonRemoveCharacter_Click(object sender, EventArgs e)
        {
            IList<string> charactersToRemove = new List<string>();
            for (var i = 0; i < dataGridViewCharacters.SelectedRows.Count; i++)
            {
                var character = ((ObjectView<CharacterSourceDTO>) dataGridViewCharacters.SelectedRows[i].DataBoundItem).Object;
                Form f;
                if (_openedForms.TryGetValue(character.Name,out f))
                {
                    var r = MessageBox.Show($"\"{character.Name}\" is currently being edited.\nDo you wish to remove it?", "Warning",
                        MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                    if (r == DialogResult.No)
                        continue;

                    f.Close();
                }

                charactersToRemove.Add(character.Name);
            }

            CurrentAsset.RemoveCharacters(charactersToRemove);
            _characterSources.DataSource = CurrentAsset.GetAllCharacterSources().ToList();
            _characterSources.Refresh();
            SetModified();
        }