[Windows Forms] : BindingSource使用模式 - 连动式下拉选单 (纯IDE开发)
前言 :
连动式下拉选单想必开发人员都不陌生,用来提供使用者先选祖先元素,再选子项目的数据呈现。
如下图 :
本篇文章介绍,如何单纯使用Visual Studio的IDE做开发。
将数据库里有父子关联的数据,在WinForm上采用连动式下拉选单来做呈现。
在接下来的内容里,采用「城镇-乡镇市区」的选择来当作范例。
开发出一个可以让使用者选择城镇后,再选择乡镇市区的连动式下拉选单。
范例下载 :
CascadingDropDownListSample.zip
数据结构 :
本篇是采用数据库直接当作数据源。
数据库名称为CascadingDropDownListDatabase,数据库内共有两个表格[CountyTable]、[ZoneTable]。
其中CountyID是[CountyTable]到[ZoneTable]的外部索引。
窗体结构 :
资料系结 :
建立数据源。
(这边大多是下一步处理用缩小图带过)
完成上列操作,IDE会帮我们建立好相对应的DataSet对象。
系结[ZoneTable]到第二个下拉选单
这边要特别留意,不是系结到IDE帮我们产生的DataSet对应的ZoneTable。
而是系结到IDE帮我们建立的[countyTableBindingSource]的[FK_ZoneTable_CountyTable]。
后记 :
本篇介绍的BindingSource使用模式,在架构上是从用户接口直接到数据库捞数据做呈现。
这样的架构在开发上,有其快速、直觉的优点。
但也包含了修改不易、牵一发动全身的缺点。
开发人员在面对系统项目的时候,应评估各种需求状况,来选择该怎么使用。
整个大大的前提是:是你在控制技术,而不是被技术控制你。
期許自己~
能以更簡潔的文字與程式碼,傳達出程式設計背後的精神。
真正做到「以形寫神」的境界。