如何检查网格中是否已选择多行

时间:2012-10-18 13:36:24

标签: grid axapta multi-select x++

如何检查网格中是否选择了多行?

在Dynamics Ax中,有一个多选属性,如果选择了多个记录,则禁用按钮,是否存在“相反”?

意味着只有在选择了多个记录时才激活按钮,我该如何通过代码执行此操作?

2 个答案:

答案 0 :(得分:2)

除非存在这种属性,否则你似乎有两件事:

  1. 检查是否选择了多行
  2. 每次选择更改时都会检查
  3. 检查多项选择

    查看axaptapedia : Multiple grid selections以计算所选记录。

    检查选择的更改

    查看InventTable的表单,其中按钮被激活,具体取决于选择是否为bom。

    从数据源的方法setBOMRouteEnabled调用表单处理按钮激活的方法,如active

    遵循此模型,您可以检查选择更改的多个选择。

答案 1 :(得分:0)

检测此问题的最佳方法是:

FormDataSource  fds = salesTable.dataSource();

if (fds.recordsMarked().lastIndex() > 1)
    info("Multiple records selected");
else
    info("1 or 0 records selected");