2011-03-09 112 views
0

我正在为我所在地区的红十字会构建一个调度程序应用程序。调度员将看到一个列表(DataGridView),其所有单位都在他/她的控制之下。每行(单位)有7列。C#DataGridView以编程方式添加行

eid (text) 
roepnr (text) 
locatie (ComboBox) 
melding (text) 
telefoon (text) 
functie (text) 
status (ComboBox) 

两个ComboBoxes中的项必须以编程方式添加。这些项目列在数据库的表格中。这是因为调度员(或主管)必须能够添加诸如位置,状态等项目。

如何将这些单位添加到DataGridView并且选择了正确的LocatieStatus?两者都是数据库单位表中的整数列。整数是与“locaties”和“statussen”表中的主键相对应的外键。

首先我想我可以使用DataSource属性将单位添加到DataGridView。但我不知道如何在ComboBoxes中选择正确的项目并将项目添加到ComboBoxes中。

该数据库是一个MySql数据库!

回答

0

难道你不只是希望组合框中的选择列成为两个表的主键字段的内容吗?所以:

string[] locaties = <SELECT primary key field from locaties> 
var cbColLocaties = dataGridView1.Columns[2] as DataGridViewComboBoxColumn; 
cbColLocaties.DataSource = locaties; 

string[] statussen = <SELECT primary key field from statussen> 
var cbColStatussen = dataGridView1.Columns[6] as DataGridViewComboBoxColumn; 
cbColStatussen.DataSource = statussen; 

...或使用任何枚举集合东西回来从查询到你的数据库,而不是一个string[]