Windows Mobile 5

Résolu
KIPRE74 Messages postés 120 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 21 novembre 2013 - 26 sept. 2008 à 10:52
KIPRE74 Messages postés 120 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 21 novembre 2013 - 26 sept. 2008 à 17:39
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

mighnion Messages postés 38 Date d'inscription jeudi 22 janvier 2004 Statut Membre Dernière intervention 16 juin 2010
26 sept. 2008 à 12:02
Avec ça tu devrais y arriver. Chez moi ça fonctionne:

textbox1.txt=MaDataTable.Columns(`Numéro de colonne`).ColumnName
3
mighnion Messages postés 38 Date d'inscription jeudi 22 janvier 2004 Statut Membre Dernière intervention 16 juin 2010
26 sept. 2008 à 11:20
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!!
0
KIPRE74 Messages postés 120 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 21 novembre 2013
26 sept. 2008 à 11:29
Salut,
j'essaie de la récupérer à partir de la dataTable, mais pour le moment pas de moyen !
0
KIPRE74 Messages postés 120 Date d'inscription jeudi 15 mai 2008 Statut Membre Dernière intervention 21 novembre 2013
26 sept. 2008 à 17:39
Merci, je vais l'essayer !
0
Rejoignez-nous