代码下载 地址 http://pan.baidu.com/s/1nuZjyat

接着说 上文继续说,这次我们要生成主从表.

此方用到了第三方的 控件 DevExpress 的Gridview .大家可去网上下载,安装后再开发.

主从表的设计,我用的 是splitContainer1  控件,水平方向拆分,

看看表 设计器文件, 发生了什么变化.与之前的button控件一样,也就那4步

//1.创建 SplitContainer对象
private System.Windows.Forms.SplitContainer splitContainer1; //2.实例化button1 对象
this.splitContainer1 = new System.Windows.Forms.SplitContainer();
((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).BeginInit(); //开始初始化化
this.splitContainer1.SuspendLayout(); //挂起布局 //3设置 SplitContainer的基本属性
this.splitContainer1.Dock = System.Windows.Forms.DockStyle.Fill;
this.splitContainer1.Location = new System.Drawing.Point(, );
this.splitContainer1.Name = "splitContainer1";
this.splitContainer1.Orientation = System.Windows.Forms.Orientation.Horizontal;
this.splitContainer1.Size = new System.Drawing.Size(, );
this.splitContainer1.SplitterDistance = ;
this.splitContainer1.TabIndex = ; //把 SplitContainer绘制 到窗体
this.Controls.Add(this.splitContainer1); ((System.ComponentModel.ISupportInitialize)(this.splitContainer1)).EndInit();//结束初始化化 this.splitContainer1.ResumeLayout(false); //恢复布局

为什么没有 Panel1, Panel2呢? 那上因为 里面没有数据,主从表我是这样设计 的

splitContainer1.Panel1 存放主表内容

splitContainer1.Panel2 存放从表内容Devexpress的GridControl控件(DevExpress.XtraGrid.v15.2.dll)

我们向Panel1 加一个 button ,Panel2 加一个GridControl .

我们看看变化

splitContainer1 初始化化后,加入了 Panel1, Panel2

this.splitContainer1.Panel1.SuspendLayout();

this.splitContainer1.Panel2.SuspendLayout();

然后把

Button1 放入Panel1,

GridControl1  放入Panel2

最后 完成 splitContainer1 .

好了,知道怎么工作的,那就做个窗体模板,往里放控件就好了.

这时,我可以按 上篇文章 讲的那样,设计好 样子,然后把能提换的代码 用占位符,做出一个窗体模板,生成控件的代码也与上一篇类似.

从表名称 就是在一张表的名称后面加上Details,约定哈,可以在 app.config 里修改.

窗体上再放一个CheckBox ,用于判断对方是否 要创建主从表,也可能只想生成主表嘛

如何 向从表 Title 如何生成呢? 也分4步

//1.创建 ColumnTitle  对象
private DevExpress.XtraGrid.Columns.GridColumn ColumnTitle; //2.实例化 ColumnTitle this. ColumnTitle = new DevExpress.XtraGrid.Columns.GridColumn(); //3.把 ColumnTitle 放入 gridView的 Columns 内
this.gridView1.Columns.AddRange(new DevExpress.XtraGrid.Columns.GridColumn[] {
this. ColumnTitle,
} //4.设置 ColumnTitle 的属性
this. ColumnTitle.FieldName = " TableData"; //绑定的字段
this. ColumnTitle.Name = "TotalPrice"; //标识该对象的名称
this. ColumnTitle.Visible = true;
this. ColumnTitle.Caption = "显示名称";

就可以在窗体中显示啦

然后 读取主从表,生成各自的 控件,放入相应的地方,

App.config

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2" />
</startup>
<appSettings>
<add key="TimeFormat" value="yyyy-MM-dd"/>
<!--时间格式化-->
<add key="Details" value="Details"/>
<!--从表后缀--> </appSettings>
</configuration>

winform代码生成器(二)的更多相关文章

  1. SNF开发平台WinForm之二-开发-单表表单管理页面-SNF快速开发平台3.3-Spring.Net.Framework

    2.1运行效果: 2.2开发实现: 2.2.1 这个开发与第一个开发操作步骤是一致的,不同之处就是在生成完代码之后,留下如下圈红程序,其它删除. 第一个开发地址:开发-单表表格编辑管理页面 http: ...

  2. 小菜学习Winform(二)WMPLib实现音乐播放器

    前言 现在网上有很多的音乐播放器,但好像都不是.net平台做的,在.net中实现音乐文件的播放功能很简单,下面就简单实现下. SoundPlayer类 在.net提供了音乐文件的类:SoundPlay ...

  3. Winform 基础二 最小化 最大化 关闭 点击任务栏隐藏显示 点击鼠标左键移动窗体

    一 最大化 二 最小化 三 关闭 四 点击任务栏隐藏显示 五 点击鼠标左键移动窗体 六 阴影效果鼠标左键移动窗口 #region UI设置 最大化.最小化.关闭.鼠标移动窗口.点击任务栏切换窗口 th ...

  4. winform代码生成器(一)

    (PS  sqlhelper的文件 竟放到 类库里了,第二篇已做了分离,边做边写的 ^_^) 做 Winform  项目时,要拖很多控件,感觉在做重复的事,那就应该用程序来完成,那就自己写一个吧.-- ...

  5. winform代码生成器(三)

    代码下载 地址 http://pan.baidu.com/s/1nuZjyat 接上面的两篇. 用户有时对 从表的 排版不喜欢,可以因某些字太长,需要拉长一些,有些则需要隐藏. 有什么办法呢? 我的思 ...

  6. SNF开发平台WinForm之十二-发送手机短信功能调用-金笛-SNF快速开发平台3.3-Spring.Net.Framework

    1.调用前组装参数 2.调用发送信息服务脚本   .调用前组装参数: BaseSendTaskEntity entity = new BaseSendTaskEntity(); entity.Mess ...

  7. SNF开发平台WinForm之九-代码生成器使用说明-SNF快速开发平台3.3-Spring.Net.Framework

    下面就具体的使用说明: 1.获取代码生成器的授权码(根据本机)-----还原数据库-------改config-----代码生成器 改代码生成器Config 2.登录代码生成器 3.查看是否连接成功 ...

  8. C# PDF、winform 生成解析二维码

    PDF 生成.解析二维码 界面样式: 第一步:下载ThoughtWorks.QRCode.dll 类并引用 地址  http://download.csdn.net/detail/liwb1987/8 ...

  9. SNF开发平台WinForm之十四-站内发送系统信息-SNF快速开发平台3.3-Spring.Net.Framework

    1运行效果: 2开发实现: .组装站内信息发送实体对象. SNFService SNFService = new SNFService(); if (this.ucUser.SelectedIds ! ...

随机推荐

  1. hadoop中常用的hdfs代码操作

    一:向HDFS中上传任意文本文件,如果指定的文件在HDFS中已经存在,由用户指定是追加到原有文件末尾还是覆盖原有的文件: package hadoopTest; import org.apache.h ...

  2. innerText、innerHTML

    innerTest修改的是标签的文本内容,如果修改的字符串具有标签的格式,不会把标签展示到页面中 innerHtml打印标签中所有子标签 以字符串的形式,如果修改的字符串有标签的格式,则直接展示到页面 ...

  3. spring 学习(二):spring bean 管理--配置文件和注解混合使用

    spring 学习(二)spring bean 管理--配置文件和注解混合使用 相似的,创建 maven 工程,配置pom.xml 文件,具体可以参考上一篇博文: sprint 学习(一) 然后我们在 ...

  4. Java面向对象之关键字static 入门实例

    一.基础概念 静态关键字 static 是成员修饰符,直接用于修饰成员. (一)特点: 1.被静态修饰的成果,可以直接被类名所调用. 2.静态成员优先于对象存在. 3.静态成员随着类的加载而加载.随着 ...

  5. 1.Java 程序工作原理

    JVM:JAVA虚拟机,java程序运行在jvm上,jvm是java程序的运行环境. java程序的平台无关性:java编写的程序(.java)经过编译器变异成字节码文件(.class).这个字节码文 ...

  6. P4855 MloVtry的idea

    $ \color{#0066ff}{ 题目描述 }$ MloVtry是一个脑洞很大的人,它总会想出一些奇奇怪怪的idea. 可问题是,MloVtry作为一个蒟蒻,很多时候都没办法解决自己提出的问题,所 ...

  7. CF165D Beard Graph

    $ \color{#0066ff}{ 题目描述 }$ 给定一棵树,有m次操作. 1 x 把第x条边染成黑色 2 x 把第x条边染成白色 3 x y 查询x~y之间的黑边数,存在白边输出-1 \(\co ...

  8. Wiki凭什么持续得到开发人员和团队的喜爱

    大家好,我是华为云DevCloud项目管理服务的产品经理恒少,作为布道师和产品经理,出差各地接触客户是常态,线下和华为云的客户交流.布道.技术沙龙. 但是线下交流,覆盖的用户总还是少数.我希望借助线上 ...

  9. 网页footer背景(stick footer布局)

    今天遇到了一个有意思的问题,想在网站的foot里面加入一张背景图片,并且在footer的底部写下一些内容于是乎在footer添加了background,并设置了footer的大小 先说一下开始的做法: ...

  10. 解析图书 XML

    Java代码: package com.thinkgem.jeesite.test; import org.dom4j.Attribute; import org.dom4j.Document; im ...