Dim filt As String = "系统编号 = '" & e.DataRow("系统编号") & "'"
Case "最高家数"
'Dim dts As List(Of DataRow) = Tables("开标记录.标录明细").DataTable.Select("系统编号 = '" & dr("系统编号") & "' And [有效报价] > 0 " ,"有效报价 DESC")
Dim dts As List(Of DataRow) = DataTables("标录明细").Select(filt & "And [有效报价] > 0 " ,"有效报价 DESC")
If e.NewValue <> e.OldValue AndAlso dts.Count > e.NewValue Then
For n As Integer = 0 To dts.Count -1
If dts(n)("评标状态").Contains("最高报价")
dts(n)("评标状态") = Nothing
End If
If n < e.NewValue Then
dts(n)("评标状态") = "最高报价" & (n+1)
End If
Next
Else
MessageBox.Show("请先录入标录明细后,再执行!")
End If
另外慢未必是这里的问题,只是很简单的赋值而已,可能更改评标状态触发了其它事件,或者表达式