表A中有一列K(整数型),它设置了数据字典,例如1=苹果,2=梨子,3=香蕉,4=……
现在表B中把表A的所有列都转成行,分别是列名、标题、数据类型、值(当有数据字典的时候,可以下拉这一列的数据字典)
在表B的PrepareEdit事件中:
Dim dmp As DataMap = Tables("A").Cols(e.Row("K")).DataMap
If dmp IsNot Nothing Then
e.Table.Cols("值").DataMap = dmp
Else
e.Table.Cols("值").DataMap = Nothing
End If
这样倒是实现了有字典就下拉字典,没有字典就手工输入。
问题是:下拉数据字典,显示的是Value,如果增加一个辅助列X,如何让这个辅助列显示数据字典的text,这样就可以用drawcell事件,在值这一列显示text了
另外,如何获取数据表的列类型,现在有日期型、字符型、逻辑型,但对于数值型就有多种了(有bit\double\integer等),如何精确获取列类型?