Bonjour à tous,
je bute sur un problème, ma fonction de trie ne fonctionne pas, bien que je n'ai aucun message d'erreur. Voici mon code :
Je voudrais trier sur la propriété GearRatio qui est simplement le rapport B/A.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Dim Listàtrier as new List (of Gear) Dim Gear1 As Gear Gear1 = New Gear(2, 3) Listàtrier.Add(Gear1) Gear1 = New Gear(3, 2) Listàtrier.Add(Gear1) Gear1 = New Gear(2, 2) Listàtrier.Add(Gear1) Listàtrier.OrderBy(Function(Gear) Gear.GearRatio)
Pouvez vous m'aider s'il vous plait.
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
39
40
41
42
43 Public Class Gear Private _A As Integer Private _B As Integer Private _GearRatio As Single Private Sub New() End Sub Public Sub New(A As Integer, B As Integer) _A = A _B = B Calcul() End Sub Public Property A() As Integer Get Return _A End Get Set(ByVal value As Integer) _A = value Calcul() End Set End Property Public Property B() As Integer Get Return _B End Get Set(ByVal value As Integer) _B = value Calcul() End Set End Property Private Sub Calcul() _GearRatio = Rapport(_A, _B) End Sub Public Function Rapport(ByVal A As Integer, ByVal B As Integer) As Single If A = 0 Then Throw New Exception("Erreur : Division par zero. A=0") Return CSng(B / A) End Function Public ReadOnly Property GearRatio As Single Get Return _GearRatio End Get End Property End Class
Partager