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
|
'ce form sera celui de l'interopform
'tu peux rajouter d'autres si tu veux agrementer
Public Class Form1
Private maListe As New List(Of Data)()
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
ContextMenuStrip1.Text = "Redden"
Dim dt As Data
For i As Integer = 1 To 10
dt = New Data("text" + i.ToString, i, i * 25.5)
maListe.Add(dt)
Next
Me.DataGridView1.DataSource = maListe
End Sub
Private Sub DataGridView1_RowContextMenuStripNeeded(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewRowContextMenuStripNeededEventArgs) Handles DataGridView1.RowContextMenuStripNeeded
e.ContextMenuStrip = ContextMenuStrip1
Dim row As DataGridViewRow = Me.DataGridView1.Rows(e.RowIndex)
row.ContextMenuStrip = ContextMenuStrip1
End Sub
'variable tres importante pour recuperer l'index row
Private rowArgs As DataGridViewCellEventArgs
Private Sub DataGridView1_RowEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.RowEnter
rowArgs = e
End Sub
'on peut remplacer les 7 handlers par celui la
'dirait Monseigneur de Montaigne
Private Sub cms_Click_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem1.Click, ToolStripMenuItem2.Click,
ToolStripMenuItem3.Click, ToolStripMenuItem4.Click,
ToolStripMenuItem5.Click, ToolStripMenuItem6.Click,
ToolStripMenuItem7.Click
Dim strName As String = CType(sender, ToolStripMenuItem).Name
Select Case strName
Case "ToolStripMenuItem1"
'ici tu peux raise ton event vers VB6
MessageBox.Show("menuitem1")
' comme j'ai mis DGV.DataSource=liste
' je dois supprimer dans ma liste car Mister Binding
' n'autorise pas la suppression dans DGV qui lui est lie
maListe.RemoveAt(rowArgs.RowIndex)
Case "ToolStripMenuItem2"
MessageBox.Show("menuitem2")
maListe.RemoveAt(rowArgs.RowIndex)
Case "ToolStripMenuItem3"
MessageBox.Show("menuitem3")
maListe.RemoveAt(rowArgs.RowIndex)
'les autres cases...............................
End Select
'rafraichit l'affichage
Me.DataGridView1.Refresh()
End Sub
End Class |
Partager