可以在表的PrepareEdit中写如下代码生成下拉列表
If e.IsFocusCell Then '一定要判断是否是焦点单元格
Dim cmd As New SQLCommand
cmd.ConnectionName = Mydata
Dim dt As DataTable
Se lect Case e.Col.Name
Case "入库单位"
'从供应商中提取数据
cmd.CommandText = "Se lect distinct 供应商简称 From 供应商 where 业务类别 = '外协加工'"
dt = cmd.ExecuteReader()
e.Col.Combolist = dt.GetComboListString("供应商简称")
End Se lect
End If
也可以将上述代码放在窗口的afterLoad中,感觉第一种每次准备编辑表时都要执行一次,是不是后面这种更高效,还是无所谓?
谢谢!