winform练习-通过遍历Control容器中的对象统一委托事件-楼盘选择器

Posted neter-p

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了winform练习-通过遍历Control容器中的对象统一委托事件-楼盘选择器相关的知识,希望对你有一定的参考价值。

1.窗体布局如下,一个label标签内容如下,一个btnSave按钮,用于保存,其他九个按钮用于选择楼盘。

技术图片

 

2. 按钮存于Control容器中,编写方法遍历容器中的button,通过条件过滤掉不是button的对象以及一个保存按钮,筛选条件就是btnSave中tag所存的“btnSave”值,通过它作为判断条件,过滤掉btnSave按钮。并且在foreach中为他们添加统一的委托。

技术图片

 

 

 

 3.添加一个House对象,在house对象中,声明了三个属性,两个构造方法。属性分别为总价,楼盘名称,每平米均价,通过构造方法为他们初始化赋值。

技术图片

4.    在窗体中添加一个私有的houses泛型集合,为后面,将对象添加到里面做准备。

技术图片

 

 

 5.委托方法中,我们将当前的sender对象转换为Button对象,便于后面从button中获取text以及tag的值。声明一个数组,使用split通过“,”为分割符,分割tag中的每平米单价和总售价。在houses泛型集合中添加新的对象,使用new方法为house赋初值。此时的值分别来源于前面数组中的【0】,【1】,我们知道tag中前面的单价,后面是总价,所以这里的price是总价格也就是对应数组下标为【1】的值。housename则取值于button中的text属性的值。

技术图片

 6.为btnSave按钮的click事件编写方法,将houses集合中的对象遍历出来,并且分别输出他们的price、agvprice、housename,使用控制台输出。便于调试。

技术图片

 

使用容器control遍历其中的对象来统一为对象进行委托事件。

以上是关于winform练习-通过遍历Control容器中的对象统一委托事件-楼盘选择器的主要内容,如果未能解决你的问题,请参考以下文章

如何遍历winform窗体中的所有控件

Winform 设置panel容器的背景为pictureBox

在C#winform中如何遍历子窗体中所有的控件

WinForms中的Control vs UserControl?

窗体内元素遍历-通用方法(DevExpress 中BarManager的遍历)

如何实现C#winform的多语言(devexpress控件)