TDBGridEh表格 lookupParams 使用
客戶的:cdsCustomer :TclientDataSet 的CommandText 為下的,中包含了DepartmentID 部門ID,這里不用關(guān)聯(lián)
Department 表的DepartmentID字段
CommandText :='select top 10 CustomerID,Code,Customer,DepartmentID from Customer ';
客戶顯示的表格如下設(shè)置
Grideh1.columns[2].FieldName :='DepartmentID'; //部門名稱
Grideh1.columns[2].Title.Caption :='所屬部門';
Grideh1.columns[2].DropDownBox.autoFitColWidths :=False;
Grideh1.columns[2].DropDownBox.columns[0].FieldName :='Code';//部門編碼
Grideh1.columns[2].DropDownBox.columns[0]。Title.Caption:='部門編碼';
Grideh1.columns[2].DropDownBox.columns[1].FieldName :='Department';
Grideh1.columns[2].DropDownBox.columns[1]。Title.Caption:='部門名稱';
//兩列設(shè)置好列寬,把看自動適應(yīng)列寬 去掉,設(shè)置一個(gè)固定的列寬 80 ,100
--以下重點(diǎn)設(shè)置
Grideh1.columns[2].lookupParams.KeyFieldNames :='DepartmentID';
Grideh1.columns[2].lookupDataset :=cdsDepartment;//TClientDataset 的 部門數(shù)據(jù)集
Grideh1.columns[2].lookupDisplayFieldName :='Department';
Grideh1.columns[2].lookupKeyFieldNames :='DepartmentID';//這個(gè)視情況而定,這個(gè)應(yīng)該是查詢條件吧暫沒測試
cdsDepartment.CommandText :='select DepartmentID,Code,Department from Department ';
這樣設(shè)置open 數(shù)據(jù)數(shù)據(jù)集即可顯示 部門名稱 ,這樣做的意義在于,下拉可以顯示多個(gè)字段,效果如果下圖


浙公網(wǎng)安備 33010602011771號