Bonjour,

Je suis entrain d'étudier et de retranscrire le code VB.net en C#, se trouvant sur codeproject :
http://www.codeproject.com/Articles/...Canvas-Control

Mon problème se situe sur un control.
Voici le code vb :
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
44
45
46
47
48
49
50
51
52
 
  Private Sub CanvasDraw_MouseDown(sender As System.Object, e As System.Windows.Input.MouseButtonEventArgs) Handles Me.PreviewMouseDown
        Dim Actual_position, Modified_position As New Point
        Actual_position = Mouse.GetPosition(Me)
        Modified_position = Mouse.GetPosition(Me)
 
        MousePosition = "X: " & CInt(Actual_position.X) & " Y: " & CInt(Actual_position.Y)
 
        If CanvasEvent = SelectedDrawingEvent.SelectCursor Then
            If Mouse.RightButton = MouseButtonState.Pressed Then
                CreateContextMenu()
            End If
        ElseIf CanvasEvent = SelectedDrawingEvent.AddPoints Then
            AddPointToCustomDrawingObject(Actual_position)
        ElseIf CanvasEvent = SelectedDrawingEvent.ZoomInRect Then
            RectangleZoom(Actual_position, e)
        Else
            If Mouse.LeftButton = MouseButtonState.Pressed Or Mouse.MiddleButton = MouseButtonState.Pressed Then
                If Not CanvasEvent = SelectedDrawingEvent.PlacePoint Then
                    DrawCustomObjectWithLines(Actual_position, Modified_position)
                Else
                    Dim NewCustomPoint As New CustomPoint("FileAttr", Actual_position)
                    Me.Children.Add(NewCustomPoint)
                    ClearTempVariables()
                End If
            ElseIf Mouse.RightButton = MouseButtonState.Pressed Then
                'Check if the Lines or Polygons could be ended or closed:
                If MouseLeftButtonDownOnDrawingCanvas.Count > 1 Then
                    If CanvasEvent = SelectedDrawingEvent.DrawClosedPolygon Then
                        'Add a new polygon
                        Dim Points As New PointCollection
                        Points = MouseLeftButtonDownOnDrawingCanvas.Clone
                        Dim NewCustomPolygon As New CustomPolygon(MouseLeftButtonDownOnDrawingCanvas.Clone)
                        Me.Children.Add(NewCustomPolygon)
                        ClearTempVariables()
                    ElseIf CanvasEvent = SelectedDrawingEvent.DrawLine Then
                        'Add a new line
                        Dim NewCustomLine As New CustomLine(MouseLeftButtonDownOnDrawingCanvas.Clone)
                        Me.Children.Add(NewCustomLine)
                        ClearTempVariables()
                    Else
                        'The program should not have come this far
                        ClearTempVariables()
                        MessageBox.Show("You have not selected type of drawing")
                    End If
                    e.Handled = True
                Else
                    ClearTempVariables()
                End If
            End If
        End If
    End Sub
Je n'arrive pas à bien retranscrire ce code là en C#
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
  Private Sub CanvasDraw_MouseDown(sender As System.Object, e As System.Windows.Input.MouseButtonEventArgs) Handles Me.PreviewMouseDown
Actuellement j'ai fait :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
	private void CanvasDraw_MouseDown(System.Object sender, System.Windows.Input.MouseButtonEventArgs e)
Cependant lorsque je l'implement dans une mainwindows, l'événement ne se déclenche pas.
Comment traduire Handles Me.PreviewMouseDown en C#?