예제 #1
0
        protected CustomDataGridViewColumnDescriptorBuilder <TModelBasetype> deleteButtonColumnCreator <TModelBasetype>(CustomDataGridView <TModelBasetype> table, ItemListFormBaseManager <TModelBasetype> .ColumnDescriptorBuilderGetterDelegate builderGetterMethod)
            where TModelBasetype : class, IModel, INotifyPropertyChanged
        {
            CustomDataGridViewColumnDescriptorBuilder <TModelBasetype> builder = builderGetterMethod();

            builder.Type(DataGridViewColumnType.Button);
            builder.Header("Delete");
            builder.Width(70);
            builder.DividerWidth(DEFAULT_DIVIDER_WIDTH);
            builder.ButtonText("Delete");
            builder.CellContentClickHandlerMethod((item, cell, e) => {
                string msgBoxText = string.Format("Do you really want to delete this {0}?\n{1}", SubjectSingular, item);
                var confirm       = MessageBox.Show(msgBoxText, "Delete confirmation", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
                if (confirm == DialogResult.Yes)
                {
                    ((IModelListFormBaseManager)Manager).DeleteItem(item);
                }
            });
            return(builder);
        }