新增基础资料单表窗体 | MiniFramework蝇量框架 | Winform框架|C/S开发框架

新增基础资料单表窗体 - MiniFramework蝇量框架 - Winform框架
目录
一、添加 Windows 窗体
在 FormsDemo 子目录下添加一个基础资料窗体:




二、窗体继承 frmBaseData
frmCustomer : Form 改为 frmCustomer : frmBaseData

三、添加按钮组件(ucButtonFunction)

参考文章:ucButtonFunction组件详解
https://www.cscode.net/archive/miniframework/256700773441541.html
四、从其他Demo窗体复制XtraTableControl组件
打开《用户管理》界面,点击XtraTableControl组件,按ctrl+c键复制组件及内容。

从其他Demo窗体复制XtraTableControl组件,包括 【数据查询】和【编辑详情】两个TabPage页面及所有子组件,提高开发效率!
打开frmCustomer界面,在空白区域粘贴XtraTableControl组件及内容,效果:

【客户资料】改名为【商户资料】
本 示例 窗体的表名:tb_Customer ,该表有个 CustomerAttributes 属性,可以定义客户的属性,比如【客户】、【供应商】、【协作单位】、【子公司】等类型。因此当前窗体的名称改为【商户资料】更合适!
五、添加或修改查询条件
定义查询条件,修改查询条件

实现【查询】【清空】按钮Click事件
点击【查询】、【清空】按钮,自动生成对应的Click事件
public partial class frmCustomer : Form
{
public frmCustomer()
{
InitializeComponent();
}
private void frmCustomer_Load(object sender, EventArgs e)
{
//
}
private void btnQuery_Click(object sender, EventArgs e)
{
//
}
private void btnEmpty_Click(object sender, EventArgs e)
{
//
}
}六、添加或修改表格的列

Grid Designer Columns 表格设计器

七、编辑详情,添加文本组件

八、绑定文本输入框的数据源
//绑定所有文本框的数据源
private void DoBindingSummaryEditor(DataTable summary)
{
DataBinder.BindingEditorPanel(gcDetailEditor, summary);
//独立绑定其他自定义组件的数据源
DataBinder.BindingControl(ucCusAttributes, summary, tb_Customer.AttributeCodes, "EditValue");
}九、新增ORM模型(tb_Customer)
ORM模型(ORM Model)是数据库表结构映射为C#类,主要作用是自动生成SQL脚本实现自动保存数据。
ORM模型是MiniFramework 至关重要的一种逻辑设计,所有模型定义在:CSFramework.Mini.Core.Models目录下。
操作步骤:



十、新增数据访问层(dalCustomer)
操作步骤:



public class dalCustomer : dalBaseDataDict
{
public dalCustomer(Loginer loginer)
: base(loginer)
{
_TableName = tb_Customer.__TableName;//表名
_KeyName = tb_Customer.__KeyName; //主键字段
_ModelType = typeof(tb_Customer);//客户资料模型
}
protected override IGenerateSqlCommand CreateSqlGenerator(DataTable table)
{
if (table.TableName == tb_Customer.__TableName)
return new GenerateSqlCmdByTableFields(typeof(tb_Customer), table, this.GeneratorFactory);
throw new Exception(table.TableName + "表没有ORM模型!");
}
}十一、新增业务逻辑层(bllCustomer)
操作步骤:



public class bllCustomer : bllBaseDataDict
{
private dalCustomer _DAL;
public bllCustomer()
{
_KeyFieldName = tb_Customer.__KeyName; //主键字段
_SummaryTableName = tb_Customer.__TableName;//表名
_DAL = new dalCustomer(Loginer.Current);
}
}十二、实现查询功能
在DAL层添加一个查询方法

public DataTable Query(string CustomerFrom, string CustomerTo, string Name, string Attribute)
{
CommandHelper sp = _Database.CreateSqlProc("usp_SearchCustomer");
sp.AddParam("CustomerFrom", CustomerFrom);
sp.AddParam("CustomerTo", CustomerTo);
sp.AddParam("CustomerName", Name);
sp.AddParam("Attribute", Attribute);
return _Database.GetTable(sp.Command, tb_Customer.__TableName);
}开发存储过程
开发 usp_SearchCustomer 存储过程。
提示:简单的SQL查询可写在DAL层。复杂的查询逻辑建议封装到存储过程!
在界面层调用查询方法
private void btnQuery_Click(object sender, EventArgs e)
{
try
{
frmWaitingEx.ShowMe(this);
var DAL = new dalCustomer(Loginer.Current);
var dt = DAL.Query(txt_CustomerFrom.Text, txt_CustomerTo.Text, txt_Name.Text, ConvertEx.ToString(txt_Attr.EditValue));
gcSummary.DataSource = dt;
}
finally
{
frmWaitingEx.HideMe(this);
}
}十三、实现增、删、改、查功能
实现 ucButtonFunction 组件按钮的Click事件

frmCustomer 窗体已实现的 Click 事件:

参考 frmCustomer.cs
十五、参考文章
ucButtonFunction 组件详解
https://www.cscode.net/archive/miniframework/256700773441541.html


DataBinder类详解 | Winform MiniFramework蝇量框架|C/S开发框架
ucButtonFunction 组件详解|MiniFramework蝇量框架|Winform框架|C/S开发框架
软件界面图片提供者策略 | MiniFramework蝇量框架 | Winform框架|C/S开发框架
角色管理/分配权限 | MiniFramework蝇量框架 | Winform框架|C/S开发框架
用户管理 | MiniFramework蝇量框架 | Winform框架|C/S开发框架
开发基础资料报表(单表) | MiniFramework蝇量框架 | Winform框架|C/S开发框架
开发数据访问层DAL | MiniFramework蝇量框架 | Winform框架|C/S开发框架
开发数据查询窗体 | MiniFramework蝇量框架 | Winform框架|C/S开发框架
模块主窗体添加功能按钮 | MiniFramework蝇量框架 | Winform框架|C/S开发框架
新增业务模块 | MiniFramework蝇量框架 | Winform框架|C/S开发框架
主窗体模块容器(frmModuleContainer)介绍 | MiniFramework蝇量框架 | Winform框架|C/S开发框架
主窗体状态栏(StatusBar)介绍 | MiniFramework蝇量框架 | Winform框架|C/S开发框架
主窗体导航菜单NavbarControl 介绍 | MiniFramework蝇量框架 | Winform框架|C/S开发框架
主窗体工具栏按钮(Toolbar)介绍 | MiniFramework蝇量框架 | Winform框架|C/S开发框架
主窗体体系架构 / 逻辑架构 | MiniFramework蝇量框架 | Winform框架|C/S开发框架
软件主窗体主界面设计 | MiniFramework蝇量框架 | Winform框架|C/S开发框架
什么是C/S结构? | C/S框架核心组成部分 | C/S框架-WebService部署图 | C/S框架-权限管理 | C/S结构系统框架 - 5.1旗舰版介绍 | C/S结构系统框架 - 功能介绍 | C/S结构系统框架 - 产品列表 | C/S结构系统框架 - 应用展示(图) | 三层体系架构详解 | C/S架构轻量级快速开发框架 | C/S框架网客户案例 | WebApi快速开发框架 | C/S框架代码生成器 | 用户授权注册软件系统 | 版本自动升级软件 | 数据库底层应用框架 | CSFramework.CMS内容管理系统 |
在线客服
