Dim _PictureBox as PictureBox = Nothing For Each _DataRow As DataRowView In Me.DataT_MaBaseXMLBindingSource _PictureBox = New PictureBox _PictureBox.Tag = _DataRow(3) 'Valeur du nom dans le xml _PictureBox.Visible = True _PictureBox.SizeMode = System.Windows.Forms.PictureBoxSizeMode.AutoSize _PictureBox.Location = New Point(_DataRow(4).ToString) ' valeur de la position dans le xml 'Ajouter des événements à la nouvelle picturebox que nous venons de créer 'de sorte qu'elle puisse être déplacé AddHandler _PictureBox.MouseDown, AddressOf Event_MouseDown AddHandler _PictureBox.MouseMove, AddressOf Event_MouseMove AddHandler _PictureBox.MouseUp, AddressOf Event_MouseUp Me.Controls.Add(_PictureBox) Next
#Region "Déplacement des pictureBox" Dim oDragPoint As Point Private Sub Event_MouseMove(sender As System.Object, e As MouseEventArgs) Handles Me.MouseMove If _PictureBox IsNot Nothing Then 'Bouge la pictureBox avec les mouvements de la souris Dim oMouseCursorPoint As Point = Me.PointToClient(Windows.Forms.Cursor.Position) _PictureBox.Location = New Point(oMouseCursorPoint.X - oDragPoint.X, oMouseCursorPoint.Y - oDragPoint.Y) End If End Sub Private Sub Event_MouseDown(sender As System.Object, e As MouseEventArgs) Handles Me.MouseDown If TypeOf sender Is PictureBox Then _PictureBox = sender _PictureBox.BringToFront() oDragPoint = New Point(e.X, e.Y) End If End Sub Private Sub Event_MouseUp(sender As System.Object, e As MouseEventArgs) Handles Me.MouseUp _PictureBox = Nothing oDragPoint = Nothing End Sub #End Region