-1

我用三个面板创建了一个用户控件我在我的主窗体中添加了这个用户控件,但是我遇到了一个问题,即我无法选择哪个面板出现在我的主窗体中。Exccactly 我在下面有这段代码可以看到我的 Panel1

Public Function Pan1()

    Panel3_Paint.Visible = False
    Panel2_Paint.Visible = False
    Panel1_Paint.Visible = True




    Return 0
End Function

因此,在我单击 stripMenu 后,我尝试在我的表单中显示第一个具有此功能的面板,但最终在我的主表单中出现了第三个面板。

我以这种方式使用我的功能

    Private Sub ClassAToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ClassAToolStripMenuItem.Click

              UserControl11.Visible = True
              Call Pan1()
    End Sub`

我尝试单击菜单中的特定按钮以显示相应的面板这就是为什么我尝试使用此功能执行此操作但我遇到的问题是我的表单中仅出现第三个面板。

我的用户控制代码

Public Class UserControl1
Public Sub Panel3_Paint(sender As Object, e As PaintEventArgs) Handles Panel3.Paint

End Sub

Public Sub Panel2_Paint(sender As Object, e As PaintEventArgs) Handles Panel2.Paint

End Sub

Public Sub Panel1_Paint(sender As Object, e As PaintEventArgs) Handles Panel1.Paint

End Sub

结束类

我也以这种方式在我的 Form.vb 中定义了我的 UserControl 和 Panels

Public UserControl1 As New UserControl
Public Panel1_Paint As New Panel
Public Panel2_Paint As New Panel
Public Panel3_Paint As New Panel
4

2 回答 2

0

在没有看到更多代码的情况下,我假设函数调用可能存在问题。

确保在事件中调用该函数。例如,如果您将 CommandButton 添加到 Form,您可以添加以下代码以在单击按钮的情况下运行:

Private Sub CommandButton1_Click()

Call Pan1

End Sub

我希望这有帮助。

于 2015-08-01T19:59:17.627 回答
0

所以我的问题解决了。我无法在面板属性中访问,这就是为什么我在我的 UserControl.vb 中创建一个公共子并在我的表单中使用它。这段代码写在我的 UserControl.vb

 Public Sub Pan1()
 Panel3_Paint.Visible = False
Panel2_Paint.Visible = False
Panel1_Paint.Visible = True



End Function

然后我以这种方式在我的表单中调用我的 Sub

Private Sub ClassAToolStripMenuItem_Click(sender As Object, e As EventArgs) Handles ClassAToolStripMenuItem.Click


    UserControl11.Visible = True
    UserControl11.Pan1()


End Sub
于 2015-08-07T18:01:20.400 回答