【发布时间】:2014-04-15 14:27:26
【问题描述】:
我正在从数据库中加载人员数据并按如下方式填充数据集:
sql = " select * from personnel "
daAdapter = New SqlDataAdapter(sql, sqlConn)
daAdapter.Fill(dsDataset, "personnel ")
dgvPersonnel.datasource=dsDataset.Tables("personnel ")
sql = " select depId, name from department "
daAdapter = New SqlDataAdapter(sql, sqlConn)
daAdapter.Fill(dsDataset, "department")
'Set department combobox datasource for filtering
cmbDepartment.DataSource = dsDataset.Tables("department")
cmbDepartment.DisplayMember = "name"
cmbDepartment.ValueMember = "depId"
'Set datasource for personnel datagridview
dgvPersonnel.datasource=dsDataset.Tables("department")
现在,当我双击 dgvPersonnel 中的任何人员时,我会加载另一个表单“frmPersonnelDatails”,以便能够修改人员数据,其中我还有一个组合框来选择人员的部门。
我现在关心的是如何将“frmPersonnelDatails”表单中组合框的数据源设置为我的数据集中的部门表,而不是再次查询数据库以加载。这意味着我不想多次查询数据。我尝试了以下但无法得到结果:
Try
serviceNo= dgvPersonnel.Rows(dgvPersonnel.CurrentRow.Index).Cells(0).Value
Dim form As New frmPersonnelDatails
personnelMode = "modify"
form.cmbDepartment.DataSource = dsDataset.Tables("department")
form.cmbDepartment.DisplayMember = "name"
form.cmbDepartment.ValueMember = "depId"
form.ShowDialog()
Catch ex As Exception
MsgBox(Err.Description)
End Try
【问题讨论】:
标签: vb.net forms combobox datasource parent