C# Winform下一个热插拔的MIS/MRP/ERP框架15(窗体基类场景1)

最基础的窗体基类其实是通过应用场景反推的结构。

以下是场景一:

  单表应用,普通的数据,比如单位/颜色/特殊字典等使用者少的,无需过多控制的可以使用一个数据表格来管理。

  和Excel表格差不多,批量修改,统一保存。

这种设计时只需要变更Datagridview的数据列,并在代码中指定数据来源即可。看下代码:

            #region 数据目标定义
            SaveTableName = "SYS_URightDef";
            SaveTablePrimaryKey = "URDefRKEYIN";
            PrimaryKeyIsAutoRKEY = true;
            SaveCheckKeyFields = "RightCode";
            SaveDuplicateAutoNo = false;
            SaveCheckNullFields = "RightCode,ObjRKEY,RightNameLL,ICommentLL,ISEQ;权限码,系统对象,权限名称,说明,次序";
            SaveNewIgnoreFields = string.Empty;
            SaveEditIgnoreFields = string.Empty;
            #endregion

  如果没有特别需求,则只变更表名,主键字段,检测字段等名称,不需要写其它代码了。

原文地址:https://www.cnblogs.com/imes/p/9879008.html

时间: 2024-09-30 13:03:45

C# Winform下一个热插拔的MIS/MRP/ERP框架15(窗体基类场景1)的相关文章

我在一个解决方案下有2个项目,那么在A项目下如何调用其他项目的资源,比如窗体,类,方法,属性等??

下面这些图展示了如何在一个项目中引用另一个项目 sln是解决方案csproj是c#项目项目是文件的集合解决方案是项目的集合包含关系,一个sln中包含多个csproj.一个csproj包含多个文件.sln:solusioncsproj:c sharp projectcsproj可以作为单独的项目运行,也可以在sln中添加csproj统一管理.如果你的解决方案中仅仅包含一个工程,那么是打开工程和解决方案的时候一样的.但是在系统中一个解决方案中可能有多个工程打开一个方案中的一个工程 这个工程打开的时候

winform 窗体实现增删改查(CRUD)窗体基类模式

参考博客下方:http://www.cnblogs.com/wuhuacong/archive/2010/05/31/1748579.html 对于一般常用到的编辑数据.新增数据窗体,分开了两个不同的窗体进行处理,而且由于BaseForm窗体没有对通用的函数进行进一步的抽象,因此,编辑及新增窗体多了很多重复累赘的代码,其实可以把新增.编辑合并一个窗体,然后根据新增.编辑两种不同的条件进行处理即可. 由于BaseForm一般需要在大多数的窗体中,而新增编辑数据窗体一般较为特殊一点,可以再增加一个基

为多态基类声明一个虚析构函数

使用一个基类指针删除派生类对象,同时基类的析构函数是非虚的,那么这个指针只会删除派生类对象中的基类的部分,其派生部分不会被删除.造成资源泄漏. 而如果一个类并不用作基类,则没必要把析构函数声明为虚的,否则会浪费空间来存储虚函数指针和虚函数表. STL容器并不含虚析构函数,因此最好不要继承STL容器. 只要有一个纯虚函数,就会导致抽象基类,即不能声明该基类的对象.抽象基类只能用来继承,纯虚函数如: virtual ~AWOV() = 0; 你必须为这个纯虚析构函数提供定义,因为析构函数调用时,最先

一个Winform下DataGridView控件外观的自定义类

一.关于起因 最近非常频繁的使用DataGridView控件,VS提供的Winform下DataGridView的默认样式非常难看.如果做美化处理的话,需要调整的地方非常多,且该控件的很多设置属性非常的晦涩,不是很人性化.每次进行设置都煞费脑筋,并且需要设置的DataGridView控件又比较多,如果手工一个一个调整非常麻烦.如果在每个窗体里逐个一行一行的用代码来设置,会造成代码很凌乱.琐碎,因此我对DataGridView格式设置的常用项封装到一个Helper类,通过这个帮助类可以一步到位完成

[C#]Winform下回车或Tab键自动切换下一个控件焦点

满足用户体验,在数据录入时,能在输入完一个信息后通过回车或Tab键自动的切换到下一个控件(字段). 在界面控件设计时,默认可以通过设置控件的TabIndex来实现.但在布局调整时或者是对输入的内容有选择性时,从用代码的方式来处理显得更好维护一点. 完整的实现方法如下: /// <summary> /// 回车.Tab键盘切换或执行操作 /// </summary> public sealed class TabEnter:IDisposable { private List<

winform下通过webclient使用非流方式上传(post)数据和文件

这两天因为工作的需要,需要做一个winform上传数据到服务器端的程序.当时第一个想法是通过webservice的方式来实现,后来觉得麻 烦,想偷懒就没有用这样的方式,http的post方式变成了第一选择.因为以前用的都是httpwebrequest之类的东西进行post提 交,winform下面还真的是第一次,不过很快就在网上找到了webclient这个类,接下来开始实现功能,话说webclient用起来还真的很简 单,一个头信息的声明,然后是URL,最后是post的数据,就完事了.正在高兴的

分享在winform下实现模块化插件编程

其实很早之前我就已经了解了在winform下实现插件编程,原理很简单,主要实现思路就是:先定一个插件接口作为插件样式及功能的约定,然后具体的插件就去实现这个插件接口,最后宿主(应用程序本身)就利用反射动态获取实现了插件接口的类型作为合法的插件,从而完成动态加载及宿主与插件之间的互动.因为之前一段时间一直搞B/S架构开发没有时间去实践,而恰好现在公司领导要求我对我公司原有的ERP系统架构进行重整,我们的ERP系统采用的基于分布式的三层架构,核心业务逻辑放在服务端,展示层与业务层之间采用基于WEB服

winform下mapxtreme2008 v7.0 生成release版提示找不到dll问题

在winform下基于mapxtreme2008 v7.0 生成了一个地图软件,用debug方式运行无误,但改为release版时提示缺少一大堆dll,如: 无法从C:\Program Files (x86)\Common Files\MapInfo\MapXtreme\7.0.0下复制AllType.DLL 等 经搜素,在C:/Windows/assembly/GAC_32/MapInfo.CoreEngine.Wrapper/7.0.0.220__93e298a0f6b95eb1/下包含所有

winform下重画ListBox

Windows Forms是由Win32 API封装的开发组件,最初是为了替代mfc,但却没有体现与Model View Controller架构对应的特色,进而在.net framework 3.0中推出了wpf,富控件数据显示方面,利用模板功能轻松实现. 在winform下要想自定义一些用户控件,就需要运用的2D绘画类.下图我们为ListBox重新排列了数据显示方式,并为每一个item加入了删除按钮. 首先我们设计一个承载数据的类ListBoxItem. 1 public class Lis