2016-12-05 36 views
0

我有一个相对简单的问题, 我有一个形式与3个图片框,我想要做的就是让它可以改变一个图片框的颜色要么;红色,琥珀色或绿色使用contextmenustrip。所以他们右键单击该框并选择一种颜色。使用ContextMenuStrip改变属性的具体控制,在vb.net

到目前为止然而,我一直没能找到任何东西从下面除了有用,

Private Sub ContextMenuStrip1_Click(sender As Object, e As EventArgs) Handles ContextMenuStrip1.Click 
    Dim cms As ContextMenuStrip = CType(sender, ContextMenuStrip) 
    Dim Item = cms.SourceControl.Name 
    End sub 

但我似乎无法将其链接到特定的控制,然后改变它的颜色。

对不起,如果这没有多大意义,我会尽量根据需要进行修改。 在此先感谢。

回答

0

我假设你已经创建了contextMenuStrip。

在设计器中,单击想要添加上下文菜单的图片框。

对其他图片框做同样的事情。

在Visual Studio窗口右侧的属性中,滚动至表示ContextMenuStrip的行,单击该行末尾的按钮,并且ContextMenuStrip名称应位于下拉列表中。点击它,你应该很好去。

要处理菜单项,请点击下面的代码 - 更改其名称和事件处理程序以匹配您的菜单项被调用的任何内容。

Private Sub RedToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles RedToolStripMenuItem.Click 
    Dim pBox As PictureBox = CType(ContextMenuStrip1.SourceControl, PictureBox) 
    pBox.BackColor = Color.Red 
End Sub 

上面的代码确定哪个PictureBox打开了Contex菜单并将其BackColor属性更改为Red。

+0

非常感谢。 :) –

+0

不用担心。乐意效劳 –