点击或拖拽改变大小

ListBox.FillUsing 方法

X#
使用数组或数据服务器指定要在列表框中显示的值集。这些值充当列表框中可以输入的值的约束,并且可选地作为程序值和显示值之间的翻译。

命名空间:  XSharp.VO.SDK
程序集:  XSharp.VOGUIClasses (在 XSharp.VOGUIClasses.dll 中) 版本:2.22 GA
语法
 VIRTUAL METHOD FillUsing(
	aContents,
	symField1,
	symField2
) AS USUAL CLIPPER
查看代码

参数

aContents (Optional)
类型:__Usual
包含要放入列表框中的值的数组。可以使用二维数组来定义在选择列表项时返回给程序的值,与在列表中显示的文本字符串分开; 这个“其他”值是 ListBox:Value 属性中返回的值,如果控件与数据库字段关联,也是存储在数据库中的值。 因此,数组可以以以下两种格式之一指定:
1.包含值列表的一维数组。
2. 两个元素数组的数组,每个数组包含要在列表中显示的字符串和返回给程序的相应值。 请注意,二维数组的结构与 DBServer:GetLookupTable() 返回的结构相同,而一维数组与 DBServer:GetArray() 返回的结构相匹配。 或者,要使用的数据服务器来提供值集。
symField1 (Optional)
类型:__Usual
要用于显示值的字段的符号名称。如果未指定,将使用第一个字段的值。
symField2 (Optional)
类型:__Usual
要用于返回给程序的值的字段的符号名称。如果未指定,将使用第一个字段的值。

返回值

类型:__Usual
备注
列表框显示字段的有效值集。根据使用的列表框类型,值集可能充当对可以检索的值的约束,或者仅充当建议。 可以指定两个值集,允许在显示的“人类可读”表示和内部的程序值之间进行翻译。
FillUsing() 方法提供了一种一次性指定要包含在列表中的值的方法,而不是使用 AddItem() 方法逐个构造列表。
提示 提示:
列表框控件可以与数据库字段关联,就像任何其他控件一样。不要将此主要字段链接与将列表框链接到用于填充列表的辅助服务器的可能性混淆。
示例
创建一个包含不同货币的列表框,向用户显示显式表示,但在内部使用不同的表示:
X#
 1METHOD Init(...) CLASS OrderWindow
 2    ...
 3    oLBCurrency := ListBox{SELF,LBCURRENCY_ID}
 4    oLBCurrency:FillUsing({;
 5                            {"U.S. Dollars",    "USD"},;
 6                            {"Can. Dollars",    "CDN"},;
 7                            {"Mexican Pesos",   "MEX"},;
 8                            {"Yen",             "YEN"},;
 9                            {"British Pounds",  "UK"},;
10                            {"German Marks",    "DM"};
11                          })
12    oLBCurrency:Show()
创建一个显示产品表中可用产品的列表框:
X#
1METHOD Init(...) CLASS OrderWindow
2    ...
3    oLBProducts := ListBox{SELF,LBPRODUCTS_ID}
4    oLBProducts:FillUsing(oDBProducts,#ProdName,#ProdNo)
5    oLBProducts:Show()
参见