我有一个用VB.NET编写的应用程序,它生成一个Infragistics UltraGrid
,其中包含有关从SQL数据库获取的公司信息。当用户点击一行时,会触发AfterRowActivate
事件,并在屏幕的下半部分为用户显示更多信息。它完成并且很好地工作。这就是所谓的方法:延迟数据库查找?
Private Sub grdCompany_AfterRowActivate(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles grdCompany.AfterRowActivate
If (Not grdCompany.ActiveRow.IsGroupByRow) Then
If (grdCompany.ActiveRow.Cells("Company_id").Text <> "") Then
FillCompanyAddressGrid()
FillCompanyDetail()
FillChildCompanyGrid()
FillPropertiesGrid()
End If
End If
End Sub
用户倾向于用箭头键快速滚动网格。因此,AfterRowActivate
事件每次都会被触发,并且正在对数据库进行不必要的查询。我想实现一个延迟,以便在程序开始查看数据库以获取更多信息之前,必须将行突出显示约半秒。但是我很难完成这个任务。这样做最好的方法是什么?
+1:我只是懒得打出来。 –
谢谢!这个伎俩。 – Cuthbert