Windows Mobile 5 [Résolu]

Signaler
Messages postés
120
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
21 novembre 2013
-
Messages postés
120
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
21 novembre 2013
-
Bonjour à tous !

J'ai peu réaliser mon application qui consistait à sauvegarder les données d'une dataGrid dans un fichier CSV grace au code suivant

Public Property odatasource() As DataTable
Get
Return mdatasource
End Get
Set(ByVal value As DataTable)
mdatasource = value
Me.dgGrid2.DataSource = mdatasource
End Set
End Property

Private Function ChargerFichier(ByVal wFilename As String) As Boolean 'la fonction prend comme paramètre le nom du fichier et retourne
' un booléen true si tout ce passe bien
Dim wFile As System.IO.StreamReader 'la lecture d'un fichier est confié à l'objet de type StreamReader
Try
wFile = New System.IO.StreamReader(wFilename) 'La fonction tente d'ouvrir le fichier passer en paramètre
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Exclamation) 'En cas d'erreur retourn un message d'erreur et quitte la fonction
Return False
End Try

Try
TextBox1.Text = wFile.ReadToEnd() 'Lecture d'un bloc du contenu du fichier ouvert, ReadToEnd
'effectue le transfer du contenu complet du fichier dans une variable de type chaîne de caractères
Catch ex As Exception
wFile.Close() 'En cas de problème fermeture du fichier
MsgBox(ex.Message, MsgBoxStyle.Exclamation) 'et affichage d'un message d'erreur
Return False
End Try

wFile.Close()
End Function


'Code de la fonction enregistrer
Private Function Enregistrer(ByVal wFichier As String) As Boolean 'La fonction Enregistrer prend en paramètre
'le nom du fichier à enregistrer et y place le contenu de la zone de saisie. Si le fichier existe déjà
'il est remplacé, sinon il est créé

Dim wFile As System.IO.StreamWriter
Try
wFile = New System.IO.StreamWriter(wFichier)
Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.Exclamation)
Return False
End Try

Try
wFile.Write(TextBox1.Text)
Catch ex As Exception
wFile.Close()
MsgBox(ex.Message, MsgBoxStyle.Exclamation)
Return False
End Try
wFile.Close()
End Function

'Code de la fonction EnregistrerSous. Cette fonction ouvre un boite de dialogue
Private Function EnregistrerSous() As Boolean

Dim wSaveFileDialog As New SaveFileDialog()
Dim wFlag As Boolean

wSaveFileDialog.FileName = pFichierEnCours

wSaveFileDialog.Filter = "Fichiers CSV(csv)|*.csv|Tous les fichiers|*.*"

If wSaveFileDialog.ShowDialog = Windows.Forms.DialogResult.OK Then

If Enregistrer(wSaveFileDialog.FileName) Then

wFlag = True

pFichierEnCours = wSaveFileDialog.FileName

'SB_Fichier.Text = System.IO.Path.GetFileName(pFichierEnCours)

End If
End If
wSaveFileDialog.Dispose()

Return wFlag
End Function



Private Sub btnSauverCSV_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSauverCSV.Click


Dim x, y As Integer

'Dim str As String = String.Empty



For x = 0 To mdatasource.Rows.Count - 1

For y = 0 To mdatasource.Columns.Count - 1

str = str & mdatasource.Rows(x).Item(y) & ";"

Next

str = str.Remove(str.Length - 1, 1)

str = str & vbCrLf


'Return wFlag
Next
TextBox1.Text = str

If pFichierEnCours = "" Then
EnregistrerSous()
Else
Enregistrer(pFichierEnCours)
End If

End Sub

Mais mon problème je n'ai pas pu récupérer l'entête des différentes colonnes.
Quelqu'un sait comment le faire ?

Merci

4 réponses

Messages postés
38
Date d'inscription
jeudi 22 janvier 2004
Statut
Membre
Dernière intervention
16 juin 2010

Avec ça tu devrais y arriver. Chez moi ça fonctionne:

textbox1.txt=MaDataTable.Columns(`Numéro de colonne`).ColumnName
Messages postés
38
Date d'inscription
jeudi 22 janvier 2004
Statut
Membre
Dernière intervention
16 juin 2010

Bonjour,

As-tu essayé de récuperer le nom des colonnes directement dans la datatable qui remplie ta datagrid ou essais tu de récuperer via la datagrid, car je me souvient pas que tu puisses le récuperer sur la datagrid en windows mobile.

l'étérnité c'est long, surtout sur la fin!!
Messages postés
120
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
21 novembre 2013

Salut,
j'essaie de la récupérer à partir de la dataTable, mais pour le moment pas de moyen !
Messages postés
120
Date d'inscription
jeudi 15 mai 2008
Statut
Membre
Dernière intervention
21 novembre 2013

Merci, je vais l'essayer !