0

ストアドプロシージャsp_ItemFilterを使用していますが、テキストボックスにデータを挿入するときに、btnButtonを押してデータを送信すると、グリッドビューに表示されないデータが空になります。これを修正するにはどうすればよいですか。使用されるコード。

 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

私の投稿を読んでくれてありがとう

4

2 に答える 2

1

これを試して

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()
于 2012-12-21T05:25:55.820 に答える
0

データ セットに入力し、select コマンドを設定して、特定のテーブルを 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
于 2012-12-21T05:30:38.507 に答える