2012-12-21 2 views
0

J'ai la procédure stockée sp_ItemFilter, mais le problème est quand j'insère une donnée dans la zone de texte, j'appuie sur btnButton pour envoyer les données, non montrées dans le gridview devient vide, comment je peux répare ça? Code utilisé.Textbox Rechercher Gridview avec procédure stockée ASP.NET

Protected Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click 
    Cmd = New SqlCommand("sp_codefilter", Cnn) 
    Cmd.CommandType = CommandType.StoredProcedure 
    With Cmd.Parameters 
     .Add("@codigo", SqlDbType.VarChar, 6).Value = TextBox1.Text 
     Cnn.Open() 
     Try 
      Dim dv As New DataView 
      Da = New SqlDataAdapter(Cmd) 
      Ds = New DataSet 
      GridView1.DataSource = Ds.Tables() 
      GridView1.DataBind() 
     Catch ex As Exception 
      MsgBox(ex.Message) 
     Finally 
      Cnn.Close() 
     End Try 
    End With 
End Sub 
End Class 

merci pour lire mon post

Répondre

1

Essayez cette

Da = New SqlDataAdapter(Cmd) 
Ds = New DataSet //<---- this DataSet is empty and needs filling 

Da.Fill(Ds); //<------- You need to fill the DataSet here 

GridView1.DataSource = Ds.Tables(0) 
GridView1.DataBind() 
0

Vous devez remplir l'ensemble de données, définissez la commande select et se lier à une table spécifique à la GridView:

Dim Cmd As New SqlCommand("sp_codefilter", Cnn) 
Cmd.CommandType = CommandType.StoredProcedure 
With Cmd.Parameters 
    .Add("@codigo", SqlDbType.VarChar, 6).Value = TextBox1.Text 
End With 

Cnn.Open() 
Try 
    Dim dv As New DataView 
    Da = New SqlDataAdapter() 
    Ds = New DataSet 
    Da.SelectCommand = Cmd 
    Da.Fill(ds, "MyTable"); 
    GridView1.DataSource = Ds.Tables("MyTable") 
    GridView1.DataBind() 
Catch ex As Exception 
    MsgBox(ex.Message) 
Finally 
    Cnn.Close() 
End Try 
Questions connexes