1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199
| Public Class Listing
Private Sub ajouter_Click(sender As Object, e As EventArgs) Handles ajouter.Click
ListView1.Items.Add(New ListViewItem(New String() {TextBox1.Text, TextBox2.Text, TextBox3.Text, TextBox4.Text}))
TextBox1.Clear()
TextBox2.Clear()
TextBox3.Clear()
TextBox4.Clear()
'Dim element As New ListViewItem
'element.Text = TextBox1.Text
' element.SubItems.Add(TextBox2.Text)
' element.SubItems.Add(TextBox3.Text)
' element.SubItems.Add(TextBox4.Text)
' ListView1.Items.Add(element)
End Sub
Private Sub ListView1_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ListView1.SelectedIndexChanged
If ListView1.SelectedItems.Count > 0 Then
Dim element As ListViewItem = ListView1.SelectedItems(0)
TextBox1.Text = element.Text
TextBox2.Text = element.SubItems(1).Text
TextBox3.Text = element.SubItems(2).Text
TextBox4.Text = element.SubItems(3).Text
Else
TextBox1.Text = ""
TextBox2.Text = ""
TextBox3.Text = ""
TextBox4.Text = ""
End If
End Sub
Private Sub supprimer_Click(sender As Object, e As EventArgs) Handles supprimer.Click
If ListView1.SelectedItems.Count > 0 Then
Dim element As ListViewItem = ListView1.SelectedItems(0)
ListView1.Items.Remove(element)
End If
End Sub
Private Sub Listing_Load(sender As Object, e As EventArgs) Handles MyBase.Load
'ListView1.Items.Add(New ListViewItem({"3360", "7016G", "unité", "33607016G"}))
' ListView1.Items.Add(New ListViewItem({"3358", "7016G", "unité", "33607016G"}))
End Sub
Private Sub modifier_Click(sender As Object, e As EventArgs) Handles modifier.Click
If ListView1.SelectedItems.Count > 0 Then
Dim element As ListViewItem = ListView1.SelectedItems(0)
element.Text = TextBox1.Text
element.SubItems(1).Text = TextBox2.Text
element.SubItems(2).Text = TextBox3.Text
element.SubItems(3).Text = TextBox4.Text
End If
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles sauvegarder.Click
Using sauve As New SaveFileDialog
sauve.Filter = "Fichier texte|*.txt"
If sauve.ShowDialog() = DialogResult.OK Then
sauvegarderlesdonnees(ListView1, sauve.FileName)
End If
End Using
End Sub
Sub sauvegarderlesdonnees(ByVal liste As ListView, ByVal fichier As String)
Dim itemsplit As String = "(*E*)"
Dim colonnesplit As String = "(*C*)"
Dim build As New Text.StringBuilder()
Dim nelement As Integer = liste.Items.Count
For Each element As ListViewItem In liste.Items
For i As Integer = 0 To liste.Columns.Count - 1
build.Append(element.SubItems(i).Text)
If (i < liste.Columns.Count - 1) Then
build.Append(colonnesplit)
End If
Next
build.Append(itemsplit) 'articles(*C*).....
Next
Try
IO.File.WriteAllText(fichier, build.ToString())
MessageBox.Show("sauvegardé")
Catch ex As Exception
MessageBox.Show(ex.Message, "erreur")
End Try
End Sub
Sub RechargerLesDonnées(ByVal Liste As ListView, ByVal Fichier As String)
Liste.Items.Clear()
Dim ItemSplit As String = "(*E*)"
Dim ColonneSplit As String = "(*C*)"
Try 'Au cas d'erreur
If IO.File.Exists(Fichier) Then 'Si le fichier existe
Dim LesDonnées As String = IO.File.ReadAllText(Fichier) 'Lire toute les données
Dim LesElements() As String = LesDonnées.Split(New String() {ItemSplit}, StringSplitOptions.RemoveEmptyEntries) 'Séparer avec (*E*)
For Each element As String In LesElements 'Pour chaque éléments dans LesElements()
If (element.Contains(ColonneSplit)) Then 'Si ça contient le séparateur (*C*)
Dim LesValeurs() As String = element.Split(New String() {ColonneSplit}, StringSplitOptions.None) 'Séparer avec (*C*)
Dim NouveauElement As New ListViewItem 'Nouveau élément a ajouter dans la ListView
For i As Integer = 0 To LesValeurs.Length - 1 'Pour chaque valeur dans LesValeurs()
If i = 0 Then 'Si c'est la première valeur
NouveauElement.Text = LesValeurs(i) 'Ajouter la valeur dans la première colonne.
Else 'Si non l'ajouter dans les autres colonnes
NouveauElement.SubItems.Add(LesValeurs(i)) 'Si i = 1 donc c'est la deuxième colonne etc
End If
Next
Liste.Items.Add(NouveauElement) 'Ajouter l'élément a la ListView
End If
Next
End If
Catch ex As Exception
MessageBox.Show(ex.Message, "Erreur")
End Try
End Sub
Private Sub Recharger_Click(sender As Object, e As EventArgs) Handles Recharger.Click
RechargerLesDonnées(ListView1, T: \Maintenance\Pilotage\Poste de reappro\Articles\articles.txt)
Using Ouvrir As New OpenFileDialog
Ouvrir.Filter = "Texte|*.txt" 'Pour plusieurs extensions on fait: Texte|*.txt|Application|*.exe|Tous|*.*
If Ouvrir.ShowDialog() = DialogResult.OK Then
RechargerLesDonnées(ListView1, Ouvrir.FileName)
End If
End Using
End Sub
Private Sub recherche_TextChanged(sender As Object, e As EventArgs)
End Sub
Private Sub recherche_TextChanged_1(sender As Object, e As EventArgs) Handles recherche.TextChanged
End Sub
Private Sub Label1_Click(sender As Object, e As EventArgs) Handles Label1.Click
End Sub
Private Sub sauvegarder_Click(sender As Object, e As EventArgs) Handles sauvegarder.Click
Me.DataFile = sauve.FileName
sauvegarderlesdonnees(ListView1, Me.DataFile)
End Sub
End Class |