private void btnEditConverter_Click(object sender, EventArgs e)
        {
            if (dgConverters.SelectedRows.Count == 0)
            {
                return;
            }

            DataGridViewRow   row       = dgConverters.SelectedRows[0];
            IConverter        converter = row.Tag as IConverter;
            EditConverterForm editForm  = new EditConverterForm(converter);

            editForm.StartPosition = FormStartPosition.CenterScreen;
            editForm.Completed    += delegate(object senderObj, EventArgs args)
            {
                row.Tag = editForm.GetResult();
            };
            editForm.ShowDialog();
        }
        private void btnAddConverter_Click(object sender, EventArgs e)
        {
            EditConverterForm editForm = new EditConverterForm();

            editForm.StartPosition = FormStartPosition.CenterScreen;
            editForm.Completed    += delegate(object senderObj, EventArgs args)
            {
                int             index     = dgConverters.Rows.Add();
                IConverter      converter = editForm.GetResult();
                DataGridViewRow row       = dgConverters.Rows[index];
                row.Cells[colConverterName.Name].Value = converter.Name;
                row.Cells[colConverterType.Name].Value = converter.Type;

                row.Tag = converter;
                this.Service.Converters.Add(converter);
            };
            editForm.ShowDialog();
        }
        private void btnEditConverter_Click(object sender, EventArgs e)
        {
            if (dgConverters.SelectedRows.Count == 0) return;

            DataGridViewRow row = dgConverters.SelectedRows[0];
            IConverter converter = row.Tag as IConverter;
            EditConverterForm editForm = new EditConverterForm(converter);
            editForm.StartPosition = FormStartPosition.CenterScreen;
            editForm.Completed += delegate(object senderObj, EventArgs args)
            {
                row.Tag = editForm.GetResult();
            };
            editForm.ShowDialog();
        }
        private void btnAddConverter_Click(object sender, EventArgs e)
        {
            EditConverterForm editForm = new EditConverterForm();
            editForm.StartPosition = FormStartPosition.CenterScreen;
            editForm.Completed += delegate(object senderObj, EventArgs args)
            {
                int index = dgConverters.Rows.Add();
                IConverter converter = editForm.GetResult();
                DataGridViewRow row = dgConverters.Rows[index];
                row.Cells[colConverterName.Name].Value = converter.Name;
                row.Cells[colConverterType.Name].Value = converter.Type;

                row.Tag = converter;
                this.Service.Converters.Add(converter);
            };
            editForm.ShowDialog();
        }