发布七个Winform新控件:Winfrom下的询问控件和情节呈现控件

二零零五年12月。五遍午饭,和楼上杨楷谈到2003级的师兄师姐立时要搬回总部读大三的事,觉得这时候肯定师兄师姐会留下不少没用了的参考书。于是当即行动,先是上门找师兄收旧书(价格都还记得,德语参考书3元一本,高数5元一本),发现收书太慢,就在女人凌云楼下摆点收书,很快场合就壮观起来,说师姐排队卖书给我们一些然而分。

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

大二转系,暑期憋足了劲想做新生工作。这会儿新生用品的营生都是被老生觊觎的大蛋糕。现在的学生都是在咖啡店里谈风投谈人脉,可曾想过这时多少个男生撑着一张写着【师兄团队】的破布卖蚊帐和脸盆是种怎么样的心绪。

            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;

还没规范开学的那几天,突然发现邯郸校区靠海容易回潮,衣橱有可能容易生虫。于是和相邻兄弟去超市花8元钱买了4包樟脑丸(每包大概20颗樟脑丸,每颗0.1元股本),然后跑男生宿舍推销。每颗定价0.8元,2颗特惠(
这时西红柿炒蛋0.8元一份!)1.5元。对着都依然后来的同级同学们,不停地推销潮湿生虫的定义。大概2个时辰,六个人卖完了4包樟脑丸,一人分了二十几块钱。当时因为这二十多,激动得没睡好。事后很长一段时间,住囊萤和映雪的男生都怀想买了天价樟脑丸。

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

这时候好卖的事物。紧倘诺小锁头,插座等容易忘带来的小件,以及台灯这种不便于从家带的大件。市场虽大,不过竞争惨烈。心里盘算,要抢更多工作,必须能在新生入学的两天时间内以最急忙度去掩盖宿舍。于是制定了一个得以升官速度的销售策略:不卖东西,改送东西!送东西速度永远比卖东西快。送新生一把锁,但不可能不签字答应从自己这里买台灯。锁的钱从灯里赚回来(独白:这时候几乎没人知道天猫)。

询问控件窗体的局部代码:

全文记录了一个屌丝男在北大里各类并不高大上的购销。作者最终因为这个倒腾的经验,有幸进入了跨外集团做管理培训生。恩恩,喜欢倒腾的伙伴可以看看打发时光,哈哈。

图片 1

———–正文分割线——–

 

多谢那段不起眼却心心念念的年青,谢谢这段镌刻着重庆大学LOGO的时光。时光的河入海流,我们终会分头走。但高校的时段总会留下我们广大什么人也带不走的事物。感恩,珍重。

                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]));
                }

大二,转系去了芬兰语系。遭逢了怪才舍友阿雷。他到底高校里最早的一批Taobao用户吧(这时候快递量不够,只有邮政能送到曲靖校区,还要自己去校门口邮局取)。因为学习需要想买台阿拉伯语的电子词典。去明斯克电子城问,快易典的JP209是唯一一款日文版的电子辞典,售价非凡独立!699元!犹豫没买,回潮州后让阿雷在淘宝上帮我查了下,只要525!什么意况!!这个年代哪有假货的概念,顿时让阿雷买了台回来(记得运费好像是25元!)。得到手,觉得用起来极度顺手,于是脸上就布满了狰狞的笑(哈哈哈)。当时刚学了一个日文单词,汉字写作【八百屋】,日文的意味是蔬菜店,觉得挺酷的,就用【八百屋】五个字印了名片和A4纸广告,在高校里卖电子辞职。1年岁月,卖了200多台电子词典和mp4。最高光的时候(焦凹的脸),女对象带进集美高校荷兰语系女人宿舍,用保加利亚语做了一遍口语秀,然后宣传概念:好的口语离不开给力的电子辞典。那天拿了14台卡西欧电子辞典的订单!依旧记得之后收了近2万元的现金,怀揣着「巨款」和女对象(现在的夫人
)兴奋而紧张地坐在集美回重庆岛的公交上,望着窗外暗暗喜悦的现象。那一幕怎能忘怀!电子辞典的营生,前后赚了10000多吗。

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

2016年11月,在迪拜游历时翻出初稿做了改动。

            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; //设置“名称”不可编辑
            //}

多谢一起做过小事情的哥们儿们。谢谢买过我樟脑丸的和羞耻贺年卡的同桌们。谢谢带自己走进电商世界的阿雷。谢谢陪自己去兴华高校摆摊,陪自己一块被赶出来的女对象。

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

记忆第一次漂洋过海,踏上漳校的这天,内心是惊恐不安的。

图片 2

111月尾旬,立刻临近圣诞节和三元了。在充足手机还不是很普及的年代(2004年),刚考上高校的学习者都会给中学老师同学寄点贺卡吧?于是跑去校门口邮电局,拿了今天看来难看得不能够再无耻的首套北大漳校明信片,一个一个宿舍去推销。0.8元进,1元卖,那个利润现在总的来说实在少得令人没干劲。也不晓得当时怎么打了鸡血,不知跑了略微宿舍,费了有点口舌,前后卖了400多张,利润80元左右,还不够现在的同窗充两次话费吧。

上面附上使用的例证,可以下载下来逐渐研讨,其中Database.sql是测试例子的数据库脚本,允许例子前,请开首化数据库。

越努力,越幸运吧。游荡在母校里的收废品二伯看到我们在收书,就带我们去他家仓库。哇塞,满满一仓库的书,大多是新的(师兄师姐偷懒啦)。三叔按3元1斤卖给我们。于是做了五次很大的投资,一口气买了1000多(数字也许不标准,只记得装了总体一个三轮车)的「旧书」搬回宿舍。等到2015年2月7日这天,乘着校督查队松懈的档子,在酒家门口支起了摊,所有师兄师姐的参考书半价销售。真的,这天的外场可以称之为火爆。一贯从早晨卖到天黑。好多系里的男生都来扶持卖。除了几十本新定义印度语印尼语参考书因为教材改了卖不出去,其他都卖光了。深夜,三双猥琐的眼眸在宿舍里清点着洁白的银两。当算出最终五个人赚了快1200元时,首次探望老实内向的小月仰天大笑。

            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万张条码赚150元已是很满意的。后来意识卢萨卡便利店日清的方便面都有卖,阿拉木图却没什么卖。于是从哈拉雷倒了日清合味道去乌兰巴托卖。从第五次拿90箱试探,到最高峰一个月卖了1000多箱。

愿意大家使用愉快,下一步我将集成UI的自动生成到Database2Sharp中,和Web一样,利用查询控件和分页控件、页面显示控件完成UI的成形。

进去2004年一月。天气转冷了。因为自己喜好躺在床上看书,就想来能夹在床头铁杆子上的台灯会有肯定需求。就跑去漳校外,找了一家女人内衣专卖店(哈哈,有兼卖点台灯),和业主谈好价钱,拿了10台床头灯去试销。发现需要很饱满,第一个夜晚除外有质地问题的2把,其他都卖掉了。价格接近是10元进,15元卖。后来左右大约卖了50个这样的台灯。

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

幸好了高等学校期间的煎熬,给协调贫瘠的简历扩大了几许特意的色彩。毕业后取得了去跨民公司做管理培训生的机遇。

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

再后来,利用在日本的人脉关系,倒腾起了日本代购。在此从先前时期一周天两单,到明天一天十多少个包裹。当初陪我一起摆摊的女对象,现在成了陪自己一块儿打包包裹的儿女姑姑。

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

二零零五年十二月,滁州校区第一次使用了网络自助选修课系统,全校沸沸扬扬。特别是周围的兄弟们一个个特意兴奋,我们都在说:体育课都能够自选哦~还有网球课可以选啊!这会还没高大上这一个词,不过肯定网球课人气爆棚。当时想那么四个人想选网球课,这网球拍的市场势必不利的。于是去校外进了一批拍子屯着等卖。映像很长远,网络自选开通当天高校男生宿舍楼贴了小广告,当天财经系2个宿舍就买了4把!相对是大单了!事后楼上兄弟问这单赚了稍稍,我算了下大约85元,被批判卖得太狠不道德(
额)

第一大家想起一下Web的询问控件和内容显示控件先。

给自身映像最深的入学情景,是师兄师姐一波接一波来推销报纸,电话卡。高中时只精通晚自习的友雅观出这种现象,内心的火山突然向天空射出长远的火花:原来高校可以这样!!

图片 3

著作初稿写于二零一一年十月6日。

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

二〇〇九年大四。毕业前夕,发现包裹行李需要箱子和蛇皮袋。于是百度上互换了一家能提供这种产品的铺面。过了两天,宿舍里就堆起了快2米高的瓦楞纸箱和蛇皮袋(后来还补过五回货)。刚先河动销比较慢,一天2-3单,进入五月尾快7月的这会,订单一下井喷,送货忙但是来。卖到2月中先周,就满门卖空了。后来没心理做了。好多学生打电话说,你们再进点货吧,实在需要纸箱。。那笔生意和室友赚了1800元。请系里的哥们在校门口的东北菜馆狠狠吃了一顿,还记得这次一桌吃了600块!这时候几杯小酒下去我们就心理得老大,隔壁爱沙尼亚语专业的小兄弟让组长端了一大碗白糖上来撒在几片切开的西红柿上,这豪迈奢华的撒糖动作至今记得。

  1. 依照设定的字段属性在界面呈现相应的验证及控件
  2. 补助下拉列表之间的联动,辅助输入数据的求证操作。
  3. 支撑查询历史记录回忆效率
  4. 支撑日期控件的集成
  5. 援助移动省集团界面样式集成

新兴入学的这两天,带着头疼的血肉之躯疯狂送锁。送出近100把锁,也就表示换回近100个台灯的订单。事后光送货就花了5天时间。10年后的明天慨叹下这时候研究生的契约精神,近100个订单中只有1名新生毁约了

图片 4

WEB查询控件

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

            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”;

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

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

            菲尔德(Field)(Field)Info manInfo = new Field(Field)Info(“Man”, “是否男性”, 菲尔德(Field)(Field)Type.Boolean);
            菲尔德(Field)Info birthInfo = new 菲尔德Info(“Birthday”, “出生日期”, 菲尔德(Field)Type.Date提姆(Tim)e);
            FieldInfo ageInfo = new FieldInfo(“Age”, “年龄”, FieldType.Numeric);

Winfrom下的询问控件和情节呈现控件和Web的属性和基本框架是一致的,都是遵照字段消息,自动构筑UI,并提供对数据的印证,下拉列表联动等,以便收缩界面代码和界面布局导致的工作量扩张。

            FieldInfo favoriteInfo = new 菲尔德(Field)Info(“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”;

下边我来介绍下Winform下的六个控件。

            FieldInfo manInfo = new 菲尔德(Field)(Field)Info(“Man”, “是否男性”, FieldType.Boolean);
            manInfo.Items = new CListItem[] { new CListItem(“男性”, “True”), new CListItem(“女性”, “False”) };
            manInfo.DefaultValue = “False”;

页面展现控件的窗体部分代码:

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

            BindData();
        }

WEB页面呈现控件

做这几个控件的最重要目的是压缩代码,并利于代码生成工具Database2夏普自动生成UI内容(WEB和Winform界面),相当于把界面展现的逻辑举办了包装。

假若我们看过自家的小说小说《查询控件、分页控件、页面展现控件,我的Web开发三大得力帮手》相信我们都对Web中的查询控件、页面突显控件有过多动人心魄,现在我这五个发布三个Winform版本的形似控件:Winfrom下的询问控件和情节体现控件。

 

            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;//表格样式

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

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

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

  1. 支撑查看、扩充、编辑三体系型的页面显示
  2. 据悉设定的字段属性在界面呈现相应的辨证及控件
  3. 匡助布局和样式修改
  4. 支撑日期控件的合并
  5. 支撑移动省集团界面样式集成

            菲尔德(Field)(Field)Info birthInfo = new 菲尔德(Field)(Field)Info(“Birthday”, “出生日期”, FieldType.Date提姆e);
            birthInfo.IsRequired = true;
            birthInfo.DefaultValue = “2009-1-1”;
            birthInfo.CustomFormat = “yyyy-MM-dd”;

虽然如此和Web界面的控件使用办法大多,我们依旧来展现下有关的代码把,这样有助于精通控件的利用方面。