落红

“落红不是严酷物,化作春泥更护花。”

假定大家看过自家的小说小说《询问控件、分页控件、页面突显控件,小编的Web开发三大得力助手》相信大家都对Web中的查询控件、页面突显控件有广大催人泪下,将来自小编那八个发布五个Winform版本的貌似控件:Winfrom下的查询控件和情节显示控件。

童希“啪”地合上以前的日记本,望向室外三三两两飘落的花瓣:“落花啊……”

先是大家纪念一下Web的询问控件和故事情节体现控件先。

曾外祖母家的果树二〇一九年有没有开放呢?

WEB查询控件

一、

  1. 依照设定的字段属性在界面彰显相应的验证及控件
  2. 协理下拉列表之间的联动,扶助输入数据的求证操作。
  3. 支持查询历史记录记念作用
  4. 支撑日期控件的并轨
  5. 支撑移动省公司界面样式集成

童希一出生就被抱到乡下曾祖母家。古老的墨紫石板路,锈迹斑斑的新民主主义革命大铁门,整整一座山的果树。放眼望去一片象牙白之中唯一的少数朱砂就是曾外祖母家层层红瓦堆叠成的宽大屋顶。童希就在这片土地上一点一点地长大。

图片 1

童希对老人家没什么心境,确切地说,是一直不什么样回忆。在童希蹲在地上看蚂蚁搬家的时候,把各个颜色的花瓣收集起来的时候,可能学着四姨拿着小刀切菜喂鸡的时候,清瘦的男生和长着娃娃脸的女士会冷不丁冒出,高兴地说:“三伯大妈回来了。”童希一直对那句话抱有疑点,总觉得应该改成:“五叔二姑来了。”或然“三叔岳母来访问了。”但那并不是孩子应该计较的政工。

WEB页面显示控件

父丈母娘会带着童希到山上走他一度度过无数十次的路,一边走一边商讨着“一会回家的时候把这个水果啊蔬菜啊每样带回家里一点些,这样就又可以省下一大笔花销”之类的话题。

  1. 辅助查看、伸张、编辑三种档次的页面展现
  2. 根据设定的字段属性在界面展现相应的验证及控件
  3. 协理布局和样式修改
  4. 帮助日期控件的合龙
  5. 协理移动省公司界面样式集成

有时候也会问:“童希,和三叔大姑在联名开不喜气洋洋?”

图片 2

“唔。”

下边作者来介绍下Winform下的七个控件。

“那孩子,在乡村都待的不爱说道了,童希应该和四伯二姑最知心才对啊。”

Winfrom下的查询控件和内容突显控件和Web的习性和骨干框架是均等的,都以依据字段新闻,自动构筑UI,并提供对数码的证实,下拉列表联动等,以便减弱界面代码和界面布局导致的工作量大增。

怎么亲近得起来吧。为何你们每回说带本身玩时只是盘算着从此处拿走什么样啊?为啥如此1个让自身认为暖和的地点你们却认为啥地都脏的麻烦下脚呢?为何你们总会骗笔者说睡一觉醒来会有幽默的东西,等醒来后却都不翼而飞你们的踪迹呢?童希认为内心很空很空,像有一个赏心悦目的天使对您说:“闭上眼睛,笔者带你飞哦。”等听到耳边簌簌流动的局面,睁开眼睛,却发现自身正在落下万丈深渊。

做那五个控件的首要目标是压缩代码,并有利于代码生成工具Database2夏普自动生成UI内容(WEB和Winform界面),相当于把界面突显的逻辑进行了打包。

童希从小就通晓怎么是心口不一和诈骗,她无法相信广大人。

图片 3

二、

图片 4

18虚岁的童希在升学宴上手忙脚乱。

固然和Web界面的控件使用办法大多,大家依旧来突显下相关的代码把,那样有助于精晓控件的拔取方面。

有史以来不善于表明的童希被亲戚们要求讲话敬酒。尽管早就料到会有这一项,就准备了一段周到得体的话,却被大妈搅得杂乱无章。“童希啊,别只谢谢曾祖父啊…你应当多谢大妈嘛…还有大姨…大家见谅啊,小编家童希不太会讲话……”突然被打断,童希只可以含糊甘休。

询问控件窗体的一对代码:

更奇怪的是,曾祖父照旧在酒席上哭了。

        private void InitSearch()
        {
            SearchControl1.Dock = DockStyle.Fill;
            //SearchControl1.PanelBorderStyle = TableLayoutPanelCellBorderStyle.Single;
            this.groupBox1.Controls.Add(SearchControl1);

“童童啊,那回走远了…本人小心点…曾外祖母没瞧见你上大学,伯公再见你也不明了是怎样时候……”伯公的话断断续续却让童希的心猛地刺痛了一晃。

            this.SearchControl1.OutSQLValueChanged += new OutSQLChangedHandle(SearchControl1_OutSQLValueChanged);
            this.SearchControl1.OnAddNew += new AddNewHandler(SearchControl1_OnAddNew);
            this.SearchControl1.OnDelete += new DeleteHandler(SearchControl1_OnDelete);

那事童希第二次看见外祖父哭,第四回,是在大姑的葬礼上。

            Button appendButton = CreateButton(“btnAppended”, “其他”);
            this.SearchControl1.AppendedButtons = new Button[] { appendButton };

在童希模拟考的前一周,奶奶突然住了院。

            FieldInfo nameInfo = new FieldInfo(“Name”, “姓名”, FieldType.String);

童希走进病房的时候,外祖母已经不认得人,说不出话,也不会喝水了。伯公用医用纱布沾满水,放在外婆的嘴里,让三姑一点一点地吮吸。“童童来看你呀。”外祖父朝童希招了摆手。“姑婆。”童希站在床边,不知该说什么好只是握住奶奶的手——曾经粗糙却温暖如春的手,方今却那么冰冷。外祖母竟有个别握紧了一入手,口中发出几声声响。童希却听不清她在说怎么样。

            FieldInfo cityInfo = new FieldInfo(“City”, “城市”, FieldType.String);
            cityInfo.Width = 100;
            cityInfo.Items = new CListItem[] { new CListItem(“北京市”, “北京”), new CListItem(“广州”), new CListItem(“成都”) };
            cityInfo.TargetFieldName = “Area”;
            cityInfo.OnFillItem += new AddItemHandler(this.OnFillItem);

阿姨,你认出自小编来了是吧?你在指责自身怎么不早点来看您呢?我掌握今日你突然精神了许多,要下地散步,而你指出的绝无仅有1个渴求,就是要见见外孙女。何人都了解,那表示如何。

            FieldInfo areaInfo = new FieldInfo(“Area”, “地区”, FieldType.String);
            areaInfo.Items = new CListItem[0];

是了,回光返照。

            FieldInfo manInfo = new FieldInfo(“Man”, “是不是男性”, FieldType.Boolean);
            FieldInfo birthInfo = new FieldInfo(“Birthday”, “出生日期”, 菲尔德Type.DateTime);
            FieldInfo ageInfo = new FieldInfo(“Age”, “年龄”, FieldType.Numeric);

“童希,你大姑,没了。”小姑在机子里这么告诉童希。

            this.SearchControl1.SearchFields = new FieldInfo[] { nameInfo, cityInfo, areaInfo, manInfo, birthInfo, ageInfo };
            this.SearchControl1.RowControls = 3;
            this.SearchControl1.ShowAddNew = true;
            this.SearchControl1.LabelHorizontalAlign = System.Windows.Forms.VisualStyles.HorizontalAlign.Right;
            this.SearchControl1.InSQL = “Select * from Test”;

“哦。”童希很坦然,本人也不清楚干什么。她平心定气地回来农村,平静地朝曾外祖母的木棺鞠躬,平静地转身离开。

            BindData();
        }

“童童,你不再看大妈一眼吧?”曾祖父的鸣响带着哭腔。

        private void BindData()
        {
            using (SqlConnection conn = new SqlConnection(CONNECTION_STRING))
            {
                conn.Open();

童希下意识向前迈出半只脚的离开,但终归沉默不语。

                string sql = this.SearchControl1.OutSQL;
                SqlCommand command = new SqlCommand(sql, conn);
                foreach (string key in this.SearchControl1.PagerParameters.Keys)
                {
                    command.Parameters.Add(new SqlParameter(key, this.SearchControl1.PagerParameters[key]));
                }

“算了,别让他看了,小孩子别吓坏了。”阿姨执意把童希推出了门。

                SqlDataAdapter adapter = new SqlDataAdapter(command);
                DataSet ds = new DataSet();
                adapter.Fill(ds, “test”);

“姑奶奶多想再看您一眼啊,童童——”背后是祖父的哭声。

                this.dataGridView1.DataSource = ds.Tables[0];
            }

夜幕,童希飞速地在桌边算着习题,丈母娘坐在床边望着她。

 

“唉,你大妈苦了毕生,小编对他还不怎么好,想想也卓殊。”大妈突然惊讶。

页面显示控件的窗体部分代码:

童希依旧算着。

        private void InitEditControl()
        {
            editControl.Dock = DockStyle.Fill;

“一天从早忙到晚地干活,伺侯你伯公——你外公明天当着那么多人的面还哭那么大声?也真够丢人的。小编都替她……”

            //editControl.ControlType = ControlType.Edit;
            //TestInfo info = new TestInfo();
            //info.Name = “wuhuacong”;
            //editControl.EntityObject = info;

“够了!”童希“腾”地上路,冲出了门外。

            FieldInfo nameInfo = new FieldInfo(“Name”, “姓名”, FieldType.String);
            nameInfo.IsRequired = true;
            nameInfo.ToolTip = “请输入用户名称”;
            nameInfo.ColumnSpan = 2;
            nameInfo.Width = 400;
            //nameInfo.MaxLength = 255;
            //nameInfo.TextColumns = 100;
            //nameInfo.TextRows = 2;
            //nameInfo.Enabled = false;
            nameInfo.IsMultiLine = true;
            //if (editControl.ControlType != ControlType.Add)
            //{
            //    nameInfo.Enabled = false; //设置“名称”不可编辑
            //}

“今日还要考试呢,你去哪?哎,童希……”二姨的喊声逐步模糊。

            FieldInfo cityInfo = new FieldInfo(“City”, “城市”, FieldType.String);
            cityInfo.Items = new CListItem[] { new CListItem(“北京市”, “北京”), new CListItem(“广州”), new CListItem(“成都”), new CListItem(“武汉”) };
            cityInfo.TargetFieldName = “Area”;
            cityInfo.OnFillItem = new AddItemHandler(this.AddItem);
            cityInfo.ColumnSpan = 2;

童希不停地跑着。

            FieldInfo areaInfo = new FieldInfo(“Area”, “地区”, FieldType.String);
            areaInfo.Items = new CListItem[0];

晚风微凉,街道两旁的霓虹灯变幻着颜色,五色流转,让童希一阵眩晕。

            FieldInfo manInfo = new FieldInfo(“Man”, “是不是男性”, FieldType.Boolean);
            manInfo.Items = new CListItem[] { new CListItem(“男性”, “True”), new CListItem(“女性”, “False”) };
            manInfo.DefaultValue = “False”;

干什么外婆生前您不对他好一点吗?

            FieldInfo birthInfo = new FieldInfo(“Birthday”, “出生日期”, FieldType.DateTime);
            birthInfo.IsRequired = true;
            birthInfo.DefaultValue = “2009-1-1”;
            birthInfo.CustomFormat = “yyyy-MM-dd”;

干什么您不知底孝顺还健在的伯公吧?

            FieldInfo ageInfo = new FieldInfo(“Age”, “年龄”, FieldType.Numeric);
            //ageInfo.CustomFormat = “#.##”;

怎么你要等到失去了才学会尊重啊?

            FieldInfo favoriteInfo = new FieldInfo(“Favorites”, “兴趣爱好”, FieldType.String);
            favoriteInfo.Items = new CListItem[] { new CListItem(“篮球”), new CListItem(“足球”), new CListItem(“网球”), 
                new CListItem(“乒乓球”), new CListItem(“台球”,”t”), new CListItem(“羽毛球”, “y”) };
            favoriteInfo.ItemsType = ListControlType.CheckBoxList;
            favoriteInfo.ColumnSpan = 2;
            favoriteInfo.Width = 300;
            //favoriteInfo.DefaultValue = “篮球,乒乓球,t,y”;

最终,童希停在了校园楼后的桃树。树下是一地凋零的花瓣儿,在路灯昏黄的灯光下有个别颤动。童希蹲下来,像时辰候一样用拇指和人数小心地捏起一片片花瓣,放在用裙子前摆围成的“袋子”里。

            editControl.EidtFields = new FieldInfo[] { nameInfo, cityInfo, areaInfo, manInfo, birthInfo, ageInfo, favoriteInfo };
            editControl.RowControls = 2; //暗中同意一行放置2个控件组
            //editControl.ContentControlWidth = 200;//所有控件统一宽度
            editControl.LabelHorizontalAlign = HorizontalAlign.Right;//标签文本对其形式
            editControl.PanelBorderStyle = TableLayoutPanelCellBorderStyle.None;//表格样式

“怎么忍心落下来呢……”童希喃喃道。

            editControl.OnCancel = new CancelHandler(this.OnCancel);
            editControl.OnSaveData = new SaveDataHandler(this.OnSaveData);
            this.groupBox1.Controls.Add(editControl);
        }

三、

        private void Form1_Load(object sender, EventArgs e)
        {
            InitEditControl();
        }

实际上小时候的童希是很淘气的。不过,也很爱哭。

 

譬如说拿木棍去戳公鸡的鸡冠,却被公鸡追的满院子跑的时候;

下边附上使用的例子,能够下载下来渐渐切磋,其中Database.sql是测试例子的数据库脚本,允许例子前,请伊始化数据库。

譬如想把玻璃摔成赏心悦目的零散,却割破手指的时候;

http://files.cnblogs.com/wuhuacong/TestWinControl.rar 

譬如说白天缠着曾外祖父讲鬼传说,清晨却被惊恐不已的梦惊醒的时候;童希都会用哭泣来终结。

可望我们利用欢悦,下一步小编将集成UI的自动生成到Database2夏普中,和Web一样,利用查询控件和分页控件、页面突显控件完结UI的变化。

假假设大白天,姑婆不管在做什么,都超越在围裙上擦擦手,跑过来摸摸童希的小脸,查看他身上的每一处,不停念叨着:“伤到没有啊童童,伤拿哪了?……不哭不哭啊……”若是是夜晚,就把童希搂进本身的被窝,小声说:“呶,外祖母给你讲岳父小时候的事情好不好?你五伯他啊,小时候可老实了……”那单臂确实很粗劣,摸在脸颊有点疼,但却很得力,童希总会转哭为笑恐怕酣然入睡。

但是有四遍,那些都不管用。

外婆家附近住着壹个时时髀里肉生的人。三十多岁的男子,不是干些捻脚捻手的事,就是各地转悠,倚在哪个人家门口讲着一些童希听不懂的段子,和豪门一起笑得没有形象。人们一而再愿意与她说笑两句,却又防着别让他随手拿走了何等事物。

这次,童希蹲在大门旁的意况里帮外婆把土豆装筐,就听见这人戏谑的笑声:“呦,二姑娘,帮外婆干活呢。”

童希警惕地看向他。外婆起身招呼了一声:“是您呀。”

“大娘,你看看自身手里那把木头剑,给您孙女玩如何?”他向姨妈挥了挥手中的剑。姑婆拍拍掌,走了过去。

哪个人料那人却意想不到把剑架在外祖母脖子上,得意地向童希笑着:“丈母娘娘,你怕不怕?”

童希愣了一晃,许多TV里的画面在脑际里一闪而过。她回身跑向瓦房,眼泪止不住地涌动面颊。

“哎,你那人,吓坏了亲骨血。”外婆一把推开那剑,追着童希跑了过去。

“我就逗逗她……”那人愣了须臾间,悻悻地转身离开。

“童童不哭啊,他和您闹着玩呢……都以假的……”外祖母用手擦着童希脸上的泪珠。童希的泪花却来了闸,她须臾间扑进外婆的怀抱,那样真实而温暖。“奶……奶……小编……小编不用和您分手……”童希不停地哭泣,话也不成句子。“好了好了,外祖母在那吗……不会分手的……啊……”外祖母拍着童希的脊背,叹了口气。

那时候的童希,第一遍发现到“分别”这么些词,觉得它是那么的可怕,让人不敢面对,她用哭泣来释放自个儿的不安。那时候的外婆或然想到了好多,而那时候的童希须求的,其实只是一个足以授予百分之百信任的心怀。

可是将来,世上再没有如此的胸怀来抚平泪水,所以一定要坚强。

四、

举世瞩目的日光把窗框的阴影印在课桌上,体育场地里弥漫着一种呛人的单调,语文先生在讲台上不停踱着步。

“哎,童希童希,下节体育课去打羽毛球啊,前些天天气很好吧。”同桌小艾用胳膊肘碰了碰童希,悄悄地说。

“不了,作者去自习室上自习。别和本人说道,听课。”童希头也不抬。

“诶——不是最喜爱羽毛球么……”小艾第几次碰了钉子,窝回座位,觉得不解气,又小声嘀咕一句:“怎么近期都冷冰冰的。”

“‘落红不是狠毒物,化作春泥更护花’落红的人命即使平息了,可是后代却替它一而再了生命……也申明了我积极性的人生态度……”老师正活跃地品析着古诗,童希却久久无法回神。

落花啊……

三姑寿终正寝后的非常长一段时间内,童希总会梦见曾祖母家满山的果树开着花。清风吹过,粉玫瑰白色、紫蓝、淡原野绿的花瓣携光飘动,恍若仙境。外祖母就站在最大的那棵桃树下,安心地笑着,铜锈绿的花把曾外祖母的面孔映得健康红润。

闪动之间,天色昏暗,所有的花都伊始衰落,零落的花瓣儿变成天灰色,盖住一整片山。曾祖母就带着笑容一点一点地隐去了,不让童希抓不住一丝美好。

一遍又五回地从梦中惊醒,童希终于打车回去了小村。

就在三姨离世后连忙,伯公坚韧不拔让邻村老伴谢世了的于岳母搬来共同住,说是相互有个照应。这惹来了广疾飞短流长,直指曾祖父的冰冷、不念旧情。童希没什么感觉,对于母亲很谦虚,但她只愿意叫他于阿姨,绝不叫“外祖母”。

“为啥吧?”童希曾并膝坐在祖父身边,这么问道。曾外祖父只是叹一口气:“因为……很像啊……”之后就是看着橘红的太阳没入山后,久久不说话。

是呀,很像吧。于母亲有着和四姨一样的口音和文章;于大姨和太婆一样勤劳地侍奉花草,把家里打扫得齐刷刷;于小姑和曾外祖母一样做出香馥馥的饭菜,从不多言。原来,外公一样不能承受没有外祖母的光阴。

即使于大姨尽心尽力地照顾着果园,整座山的果树却再没有开过花,好似枯木。人们都说花被曾祖母带走了,童希却认为这是因为它们都在团结的梦里开过了。

童希站在那棵最大的桃树下,伸手抚过它粗糙的树枝,好像外祖母的手心,令人安心。

太婆,我有努力学习呦,这一次模拟考试小编得了头名吧。

太婆,作者有试着去相信身边的人了啊,同学们都很行吗。

曾祖母,你在梦中让作者来看你,作者就来了呀。

太婆,我……有点想你了吗。

五、

童希瞧初叶中的日记本,它承载着温馨全体学生时代啊。

日记本的最后一页贴了一张相片:外祖母抱着年幼的童希站在桃树下,童希梳着八只羊角小辫,笑得专程灿烂。一束阳光打在妈妈的鬓角,追溯着许多年前尤其温暖的清晨。

曾祖母说:“童童高兴,奶奶就欣喜嘛。”

照片的正下方,正是一笔一画认真写下的那句“落红不是惨酷物,化作春泥更护花”。

姑姑,作者一度以为,落花真的很无情,明明和树那样生死相许,却忍心离开它的身边;

外婆,我一度认为,分别是这样恐怖,小编平素告诉自个儿你并从未距离,那都不是实在,小编不敢回去那间尚未您的瓦房里;

大姑,小编已经认为,只要本身不落泪,小编就是强项的;可是实际上,我直接在逃避。

花要落,是因为要呵护他一贯器重的树,而树在替她活下来,并开出更美妙的繁花。

不哭,并不是坚强,而是不敢面对。当自家能为你流出眼泪时,那漂浮已久的痛才和作者的心恰好重合,没有何样可以动摇。在自身肯认同对您的怀恋时,小编才敢面对你的远去。

逝去的人只好住在生存的人的记念里,所以自个儿永远都不会把你忘记。

大姨你说过,作者开玩笑你就会快意。那么,小编要一贯向来快意下去,哪怕时光轮转,哪怕荆棘四处,哪怕那众人有那么多不美好的工作,你永远都看得见本身最灿烂的一坐一起。

太婆,就让我替你再笑一辈子吧。

“啪”,一颗泪珠滴在照片上,恰好覆上一片落花。