Lorsque j'essaie de modifier la source de données de mon DataGridView, je perds l'ordre des colonnes et leur type (cases à cocher, comboboxes) que j'ai spécifié au moment du design.DataGridView perdre l'état initial spécifié au moment du design
C'est comme si le fait de changer la source de données générait de nouveau le datagridview, pourquoi? et Comment puis-je changer la source de données sans perdre ces informations?
S'il vous plaît si vous me connaissez donner de l'aide
Merci à l'avance
Sur la forme charge je fais quelque chose comme
Private Sub frmGrid_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim Path as string
Path="C:\......Myfile.xml"
Dim oData as dataset
oData = New DataSet
oData.ReadXml(Path)
oData.AcceptChanges()
DataGridView1.DataSource = oData
DataGridView1.DataMember = oData.Tables(0).TableName
end sub
Jusqu'à présent, tout va bien le mode de conception est préservée.
Puis-je avoir dans mon interface, j'ai un bouton pour enregistrer le contenu de mon grille dans un fichier Excel (c'est un xml, formaté pour Excel)
Ensuite, je veux importer ce, sur une action de bouton, donc je fais ce qui suit
Private Sub Button13_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button13.Click
Dim MyDs As DataSet
MyDs = New DataSet
Dim InputFileStream As New System.IO.FileStream(Path, System.IO.FileMode.Open)
MyDs = ImportExcelXML(InputFileStream, True, True)
MyDs.ReadXml(Path)
MyDs.AcceptChanges()
DataGridView1.DataSource = MyDs
DataGridView1.DataMember = MyDs.Tables(0).TableName
end sub
Lorsque vous ouvrez le fichier XML exporté dans Excel, sont les colonnes dans le bon ordre ou ont-ils changé l'ordre du GridView? – Zachary
AutoGenerateColumns http://msdn.microsoft.com/fr-fr/library/system.web.ui.webcontrols.gridview.autogeneratecolumns.aspx –