A que te refieres con un 
ViewGrid??? Un control de alguna librería externa o puede ser el GridView que viene con asp.net?
Como estás trayendo los datos? Usas DataTable, Generics??
Este es un ejemplo usando DataTable   
Código vb.net:
Ver original- 'Lo pones en el evento que desees 
- Using cn As New SqlConnection(cadena_conexion) 'reemplazalo por tu cadena de conexion 
-      Using cmd As New SqlCommand("Select ProductId, ProductName From Products where ProductId=@codigo",cn)  
-            'Configurar el parámetro 
-            cmd.Parameters.Add("@codigo",SqlDbType.Int,4).value = Me.TextBox1.Text 
-            Using da As New SqlDataAdapter(cmd) 
-                   Dim dt As New DataTable("Productos") 
-                   da.fill(dt) 
-                   gridView1.DataSource = dt 
-                   gridView1.DataBind() 
-            End Using 
-      End Using 
- End Using 
Lo que hace es buscar un producto con la consulta 
"Select ProductId, ProductName From Products where ProductId=@codigo" según su código.
Luego creo un datatable y lo enlazo a la grilla. 
Para usar Crystal Reports quizá puedan servirte los ejemplos que tengo en mi blog, el link está en mi firma.
Espero te haya dado una idea. 
