我有一个带网格的网页面板。此网格链接到SDT。我已经能够向SDT添加行,然后自动显示网格上添加的行。现在我正在尝试删除某些行。 在网格列的事件代码中,我放了这段代码(取自http://hmquiroz2.blogspot.com/2009/09/eliminar-item-de-sdt-en-genexus.html):
&Idx = &Sdt.IndexOf(&Sdt.CurrentItem)
&Sdt.Remove(&Idx)
grid1.refresh() // added later, trying to update the grid
但网格保持不变。我之前尝试过添加grid.refresh(),但没有用。我已经尝试将“Web用户体验”属性从SMOOTH更改为以前的版本兼容性。也没有运气。调试我看到& SDT.Count属性没有改变。
答案 0 :(得分:2)
我使用以下代码从Sdt中删除项目:
&Idx = 0
For &SdtItem in &Sdt
&Idx += 1
If &SdtItem.Line = &Sdt.CurrentItem.Line
&Sdt.Remove(&Idx)
Exit
EndIf
EndFor
答案 1 :(得分:0)
这段代码对我有用:
&Sdt.Remove(&Sdt.IndexOf(&Sdt.CurrentItem))
我在用户事件中使用它(" Borrar")