Как насчет:
If ds.Tables("Orders").Rows.Count = 0 Then
lblNoResults.Visible = True
DataGridView1.Visible = False
Else
lblNoResults.Visible = False
DataGridView1.DataSource = ds.Tables("Orders")
'Anything else you need to do
DataGridView1.Visible = True
End If
lblNoResults
будет меткой с текстом, похожим на "Результаты не найдены", который вы будете отображать вместо DataGridView.t связать источник данных, если в нем нет строк.
Возможно, в другом коде есть ошибки, вызывающие вашу конкретную проблему.Если вы хотите показать больше своего кода, вам будет легче сказать, что происходит не так.