ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 发布一个WinForm控件--TableViewControl(转)

发布一个WinForm控件--TableViewControl(转)

原创 Linux操作系统 作者:iDotNetSpace 时间:2010-09-14 13:39:57 0 删除 编辑

     这几个比较忙,也没有想到写些什么,所以停笔了一个多月。本想写个Code生成技术呢,到Codesmith和T4就不知道该写些什么示例,比较实用也大家比较感兴趣的,所以暂时停下,如果关于Code生成技术你有什么好的想法,可以给我写建议。

   还是赶快进入正题,我以前写过一个 Sql查询生成模块 。当时用的MDI窗体,始终感觉有些不如意,所以想重构下,特别有些sql性能和生成规则。所以就开发了今天要讲的控件,我把它称为TableView控件,名字和实际联系不大,主要是刚开始时候没有考虑这么多,就是为了Sql查询重构而写的,后来感觉在以后的代码生成工具设计,Ui界面设计也会很有用,所以就把它独立了出来做成控件(我觉得代码生成工具最好还是像Linq一样提供DBML设计界面)。先看运行结果:

设计时:

image

运行时:

image

这是一个带有标题、图标、关闭按钮、可拖动的内容控件,其实相当于一个panel。我打算用它来取代以前的MDi窗体。现在唯一缺憾是在设计时还不能想Panel一样直接拖动加入子控件,还是必须写代码,在后台代码添加

 

<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->this.tableViewControl1.ContentControls.Add(new ListBox() { Dock = DockStyle.Fill }); 
checkedListBox1.Dock 
= DockStyle.Fill; 
this.tableViewControl3.ContentControls.Add(checkedListBox1);

 

 

这个设计时,我正在设法解决。panel的设计时PanelControlDesigner继承至ParentControlDesignr,到市里面的代码很多,所以暂时想找一个更好的方式来实现,如果你有好的建议,希望赐教。感觉这个设计时,有失大雅了,呵呵。

  在这个控件中设计为用户控件,在控件添加了多个Panel:标题栏,内容框,右边框和下边框(为了可拖动改变Size)。

 

                  无标题

      

       控件下载:TableViewControl

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/12639172/viewspace-673840/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-01-04

  • 博文量
    2376
  • 访问量
    5765946