У меня относительно простой вопрос, касающийся лучшего способа вызова функции DataGridView.Rows.Add, когда она наследуется в текущем элементе управления. Какой лучший способ сделать вызов унаследованного элемента управления? Вызывать его напрямую в invoke или вызывать с помощью рекурсивной функции? Похоже, они оба дают одинаковый результат, добавляется строка и возвращается количество, но какой из них наиболее эффективен?
Делегат: Private Delegate Function ReturnDelegate() As Object
Два способа:
A)
Private Overloads Function AddRow() As Integer
If InvokeRequired Then
Return CInt(Invoke(New ReturnDelegate(AddressOf AddRow)))
Else
Return Rows.Add()
End If
End Function
Или
В)
Private Function RowsAdd() As Integer
If Me.InvokeRequired Then
Return CInt(Me.Invoke(New ReturnDelegate(AddressOf MyBase.Rows.Add)))
Else
Return MyBase.Rows.Add
End If
End Function