1

我在表单上使用Listbox控件,并以编程方式向其中添加项目。我认为如果我在Listbox上调用sort(SortOrder::Ascending)方法,它就会这样做——但是,我错了。

最终,我无法实现这些结果。我不必使用Listbox,但我需要两个功能:

  1. 以编程方式能够将字符串添加到控件
  2. 能够在单击选择项目时运行代码
  3. 该列表应该能够按字母顺序排序
4

1 回答 1

3

我也无法让列表框排序。最简单的可能是使用“ListView”控件而不是列表框。您可以在 (AOT>Forms\tutorial_Form_ListControl) 中查看如何使用 AND 排序。您的要求 #1 和 #2 几乎适用于您所做的任何事情。问题是我认为的排序。

另一种选择是保留一个控制排序的局部变量。我会使用一个集合类,一个数组或映射,这样您就可以通过键值控制排序,然后您可以在用户添加/删除某些内容时重新加载列表框。由于它是客户端并且听起来列表框不会有 1000 多个控件,因此重新加载它可能不会对性能造成重大影响。如果控制得当,还可以使用 listbox.insert([value], [index]) 插入正确的位置。

另一种选择,从 AOT 劫持任何简单表(TmpABC 是一个很好的表),插入值,然后使用简单查询进行排序,甚至更好,将 TmpABC 设置为 ListView 控件的数据源,然后通过数据源排序进行排序。

于 2012-08-13T16:13:39.060 回答