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
|
Private Sub GetData()
Dim rnd As New Random
'Canal A
pointsA.Add(New PointF(ParaH1_CA.Text, txt_valeur1CA.Text))
pointsA.Add(New PointF(ParaH2_CA.Text, txt_valeur2CA.Text))
pointsA.Add(New PointF(ParaH3_CA.Text, txt_valeur3CA.Text))
pointsA.Add(New PointF(ParaH4_CA.Text, txt_valeur4CA.Text))
pointsA.Add(New PointF(ParaH5_CA.Text, txt_valeur5CA.Text))
pointsA.Add(New PointF(ParaH6_CA.Text, txt_valeur6CA.Text))
pointsA.Add(New PointF(ParaH7_CA.Text, txt_valeur7CA.Text))
pointsA.Add(New PointF(ParaH8_CA.Text, txt_valeur8CA.Text))
pointsA.Add(New PointF(ParaH9_CA.Text, txt_valeur9CA.Text))
pointsA.Add(New PointF(ParaH10_CA.Text, txt_valeur10CA.Text))
BindingSourceA.DataSource = pointsA
Chart1.Series(0).ChartType = SeriesChartType.Area
Chart1.Series(0).XValueMember = "X"
Chart1.Series(0).YValueMembers = "Y"
Chart1.Series(0).BorderWidth = 2
Chart1.Series(0).MarkerColor = Color.White
Chart1.Series(0).MarkerStyle = MarkerStyle.Circle
Chart1.Series(0).MarkerSize = 18
Chart1.Series(0).IsValueShownAsLabel = False
With Chart1.Series(0)
.Name = "Canal A"
End With
'Move legend to bottom and center
Chart1.Legends(0).Docking = Docking.Bottom
Chart1.Legends(0).Alignment = StringAlignment.Center
' les Bindings
Chart1.Series(0).Points.DataBind(BindingSourceA, "X", "Y", Nothing)
Chart1.DataBind()
ListBoxA.DataSource = BindingSourceA
txtXA.DataBindings.Add("Text", BindingSourceA, "X", True, DataSourceUpdateMode.OnPropertyChanged)
txtYA.DataBindings.Add("Text", BindingSourceA, "Y", True, DataSourceUpdateMode.OnPropertyChanged)
End Sub
Private Sub Chart1_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles Chart1.MouseDown
selectedDataPointA = Nothing
positionA = -1
If e.Button = MouseButtons.Left Then
Dim hitResultA As HitTestResult = Chart1.HitTest(e.X, e.Y)
If hitResultA Is Nothing Then Return
If hitResultA.ChartElementType = ChartElementType.DataPoint Then
selectedDataPointA = CType(hitResultA.Object, DataPoint)
selectedSerie = hitResultA.Series
BindControls()
' Show point value as label
selectedDataPointA.IsValueShownAsLabel = True
'-----------------MAJ POINTS-----------------
positionA = hitResultA.PointIndex
selectedPointFA = New PointF(selectedDataPointA.XValue, selectedDataPointA.YValues(0))
End If
End If
Private Sub BindControls()
If selectedSerie Is Chart1.Series(0) Then
BindingSourceA.DataSource = pointsA
ElseIf selectedSerie Is Chart1.Series(1) Then
BindingSourceB.DataSource = pointsB
End If
Label_Canal.Text = selectedSerie.Name
ListBoxA.DataSource = BindingSourceA
txtYA.DataBindings.Add("Text", BindingSourceA, "Y", True, DataSourceUpdateMode.OnPropertyChanged)
End Sub
End Sub |