Bonjour à tous,
J'ai créé une classe Client qui ressemble à cela :
Dans cette classe j'utilise une propriété Intervention qui est de type Intervention (qui est une classe dont le code est ci après) :
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
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38 Imports System.Runtime.Serialization <DataContract> Public Class Client <DataMember(Name:="NomClient")> Property NomClient As String <DataMember(Name:="PrénomClient")> Property PrenomClient As String <DataMember(Name:="AdresseClient")> Property AdresseClient As String <DataMember(Name:="CodePostalClient")> Property CodePostalClient As String <DataMember(Name:="VilleClient")> Property VilleClient As String <DataMember(Name:="Interventions")> Property Interventions As Intervention Public Sub New(ByVal nomC As String, ByVal prenomC As String, ByVal adresseC As String, ByVal codePostalC As String, ByVal villeC As String, ByVal interventionC As Intervention) NomClient = nomC PrenomClient = prenomC AdresseClient = adresseC CodePostalClient = codePostalC VilleClient = villeC Interventions = interventionC End Sub Public Sub New() End Sub End Class
Ma première question est la suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Public Class Intervention Property dateIntervention As Date Property detailIntervention As String Public Sub New(ByVal dateI As Date, ByVal detailI As String) dateIntervention = dateI detailIntervention = detailI End Sub Public Sub New() End Sub End Class
Est ce la bonne méthode pour faire cela ?
La deuxième question concerne l'utilisation de ces classes.
J'ai une liste de client qui s'affiche.
J'aimerais, que quand je clique sur un item de cette liste (un client donc), qu'une autre liste des interventions se remplisse avec les interventions de ce client.
Voici le code que j'ai pour le moment et qui ne fonctionne pas bien entendu :
Dans le cas où aucune interventions n'a été réalisé je fais apparaitre un bouton qui me permet d'en rajouter une.
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 Private Sub listClient_ItemClick(sender As Object, e As ItemClickEventArgs) Handles listClient.ItemClick selectionClient = DirectCast(e.ClickedItem, Client) Dim nomC = selectionClient.NomClient Dim prenomC = selectionClient.PrenomClient Dim adresseC = selectionClient.AdresseClient Dim codePostalC = selectionClient.CodePostalClient Dim villeC = selectionClient.VilleClient If selectionClient.Interventions Is Nothing Then btnAjoutIntervention.Visibility = Visibility.Visible Else listIntervention.ItemsSource = Nothing listIntervention.ItemsSource = selectionClient.Interventions End If End Sub
Mais je suis aussi bloqué sur l'ajout de cette intervention.
J'aimerais un coup de pouce concernant mon soucis.
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 Private Sub btnValiderIntervention_Click(sender As Object, e As RoutedEventArgs) Dim index = clients.IndexOf(listClient.SelectedItem) Dim intervention = New Intervention() With { .dateIntervention = textDate.Text, .detailIntervention = textDetail.Text} selectionClient.Interventions = intervention clients.Insert(index, selectionClient) SauvegarderClient() 'listIntervention.ItemsSource = Nothing 'listIntervention.ItemsSource = selectionClient.Interventions End Sub
Je vous remercie par avance pour votre aide.
Partager