Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
vb.net中的自定义弹出菜单_Vb.net - Fatal编程技术网

vb.net中的自定义弹出菜单

vb.net中的自定义弹出菜单,vb.net,Vb.net,我想在vb.net中创建一个自定义控件,它的行为类似于vb6弹出菜单&它的行为类似于表单显示对话框。动态填充弹出菜单&我的O/P仅取决于弹出菜单的点击事件结果 通过使用context menustrip,问题是在调用context menustrip的表单的所有事件之后引发context menustrip的click事件。因此,我无法使用上下文菜单Ustrip itemclicked result在Mainform中继续程序的其余部分 我的主要形式MouseUp叫做 显示鼠标内部的上下文菜单

我想在vb.net中创建一个自定义控件,它的行为类似于vb6弹出菜单&它的行为类似于表单显示对话框。动态填充弹出菜单&我的O/P仅取决于弹出菜单的点击事件结果

通过使用context menustrip,问题是在调用context menustrip的表单的所有事件之后引发context menustrip的click事件。因此,我无法使用上下文菜单Ustrip itemclicked result在Mainform中继续程序的其余部分

我的主要形式MouseUp叫做

显示鼠标内部的上下文菜单

显示关联菜单条后,主窗体鼠标的下一行继续从ContextMenuStrip_ItemClicked获得的结果

ContextMenuStrip_ItemClicked还有许多其他功能和代码,在它之外是无法替换的

代码:


有太多未定义的变量,我并不完全清楚你到底想要什么。你想创建一个弹出窗口;通常,您可以使用非常简单的MessageBox或创建一个新表单。我知道你想创建一个新表单,但我没有遇到问题。你是说你不能在两种形式的事件之间移动吗?请告诉弹出窗口中您想要的确切元素,例如menuStrip,它预计何时出现,例如,每次用户单击。。。你面临的确切问题是什么,例如,无法触发此事件……你不能发送包含问题的电子邮件,以便我可以为你解决问题?!请不要再这样做了。如果您需要这里的帮助,请在这里回复并更新您的问题,以便这里的任何人都可以帮助您。这不是一个私人解决我的问题服务提供。重做你的问题,在这里等待帮助。
 Private Sub ChangeLayer(ByRef X As Double, ByRef Y As Double, ByRef D As String, ByRef T As Integer)''*****Change Layer Called in MouseUp Event of MainForm
            Dim A As String
            Dim objDrawingPoint As New Drawing.Point
            Dim cms As New ContextMenuStrip
            DeleteFlag = False
            'A = M_PlaceLayer.Text
            A = PlaceOn.Text
            If T Then
                M_SelLayC(0).Enabled = False : M_SelLayC(1).Enabled = False
                M_SelLayS(16).Enabled = False : M_SelLayS(17).Enabled = False
                CompLayer(0).Enabled = False : CompLayer(1).Enabled = False
                SolderLayer(16).Enabled = False : SolderLayer(17).Enabled = False
            End If
            '' M_PlaceLayer.Text = StrAnsi(D)
            PlaceOn.Text = StrAnsi(D)
            m_LayerFlag = False
            objDrawingPoint = ViewPicture.PointToClient(Cursor.Position)
            With objDrawingPoint

                cm_FO.Show(ViewPicture, New Point(.X, .Y))'''**Context MenuStrip Show() 


            End With

            '''''Depends on Result of ItemClicked of cm_FO contextmenustrip below code works

    '******************************************************

    'Code Below Works with result of Context MenuStrip ItemClicked 

    '******************************************************

    '         M_PlaceLayer.Text = StrAnsi(A)
            PlaceOn.Text = StrAnsi(A)
            If T Then
                M_SelLayC(0).Enabled = True : M_SelLayC(1).Enabled = True
                M_SelLayS(16).Enabled = True : M_SelLayS(17).Enabled = True
                CompLayer(0).Enabled = True : CompLayer(1).Enabled = True
                SolderLayer(16).Enabled = True : SolderLayer(17).Enabled = True
            End If
    '****************************************************
        End Sub