J'ai un DataGridView lié à un DataSet. Je veux seulement une sélection de colonnes affichées sur le DataGridView plutôt que tous. J'ai alors une zone de texte dans laquelle je veux afficher une valeur (colonne Version_no) de la colonne n'apparaissant pas dans DataGridView. Est-ce possible?Sélection de résultats à partir de DataSet
Serait-il préférable d'avoir une colonne cachée sur le DataGridView et utiliser cette valeur pour la zone de texte?
Dim UpdateThreadStart As New ThreadStart(AddressOf QueryDataBase)
Dim CallDataBindToDataGrid As New MethodInvoker(AddressOf Me.DataBindToDataGrid)
Dim MyDataSet As New DataSet
Dim MyDataAdapter As SqlDataAdapter
Dim MyQueryString As String = ""
Dim MyConnection As New SqlConnection("ConnectionString")
Private Sub BtnSearch_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles BtnSearch.Click
Try
MyQueryString = "SELECT * FROM TABLE;"
UpdateThread = New Thread(UpdateThreadStart)
UpdateThread.IsBackground = True
UpdateThread.Name = "UpdateThread"
UpdateThread.Start()
While UpdateThread.IsAlive
Application.DoEvents()
End While
Catch ex As Exception
MessageBox.Show(ex.Message)
End Try
End Sub
Public Sub DataBindToDataGrid()
DGVSearchResults.DataSource = MyDataSet
DGVSearchResults.DataMember = "MyTable"
MyDataAdapter = Nothing
MyDataSet = Nothing
End Sub
' Sub routine used by the background thread to query database.
Public Sub QueryDataBase()
MyDataSet = New DataSet()
MyConnection.Open()
Dim cmd As New SqlCommand(MyQueryString, MyConnection)
MyDataAdapter = New SqlDataAdapter(cmd)
MyDataAdapter.Fill(MyDataSet, "MyTable")
MyConnection.Close()
' Make asynchronous function call to Form's thread.
Me.BeginInvoke(CallDataBindToDataGrid)
End Sub
TextBox.Text = MyDataSet.Tables (0) .Rows (DGVSearchResults.CurrentRow.Index) ("Software_Version") renvoie le datagridrow courant de l'ensemble de données. Est-il possible de masquer cette colonne de DataGridView? (Ou sélectionnez \ afficher uniquement des colonnes spécifiques?) Comme elles ne sont pas obligatoires dans le DataGrid, elles sont maintenant affichées dans la zone de texte. – madlan