Bonjour à tous,
Je reviens vers vous car j'ai un problème lors d'une mise à jour des datagridviews. C'est extrêment lent .....
Je lie mes datagridviews de cette manière :
Au chargement de mon form principal, j'utilise la commande :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 Public Sub GetData(ByVal selectCommand As String) Call connection1() Dim connectionString1 As String = base1 & base3 ' Create a new data adapter based on the specified query. Me.Table1dataAdapter = New OleDbDataAdapter(selectCommand, connectionString1) ' Create a command builder to generate SQL update, insert, and ' delete commands based on selectCommand. These are used to ' update the database. Dim commandBuilder1 As New OleDbCommandBuilder(Me.Table1dataAdapter) ' Populate a new data table and bind it to the BindingSource. 'Dim table1 As New DataTable() table1.Locale = System.Globalization.CultureInfo.InvariantCulture Table1.Clear() Me.Table1dataAdapter.Fill(Table1) Me.Table1bindingSource.DataSource = table1 end sub
Pour mettre mes datagridviews à jour par rapport à des BDD Access, j'utilisais la commande :
Code : Sélectionner tout - Visualiser dans une fenêtre à part GetData("select * from Table1")
Cette commande est trop longue .... Je me suis dis, pourquoi ne pas vider le datatable et recharger comme si je lançais l'application pour faire la MAJ :
Code : Sélectionner tout - Visualiser dans une fenêtre à part Me.GetData(Me.Table1dataAdapter.SelectCommand.CommandText)
De cette manière (pas trop géniale diront certains), cà va beaucoup mieux mais j'ai alors un BUG dans mon datagridview ....
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 Me.Table1DataGridView.DataSource = vbNull Me.GetData(Me.Table1dataAdapter.SelectCommand.CommandText)
Ce dernier n'a plus le même format, mes colonnes masquées volontairement apparaissent, certaines colonnes que j'avais mis en gras ne le sont plus ......
J'avoue que là je suis totalement perdu ..... Merci d'avance pour votre future aide![]()
Partager