以VB形式启动进程而不单击按钮

时间:2014-04-11 07:06:37

标签: vb.net winforms visual-studio-2012

这是我的情况。

我在VB.NET中有一个来自应用程序的窗口。在我的第一个表单中有两个复选框。如果选中一个,则转到Form2,如果只选中第二个,则转到Form3。如果两者都被选中,那么我想首先进入Form2,当这个过程完成后,转到Form3。一切都很好,直到这一点。 但是,我希望Form3开始执行其代码(在后台工作程序中)而不按任何按钮(只有选中第二个复选框时才会这样)。这可能吗?

提前致谢!

额外信息......

要在表格之间导航我使用显示/隐藏/关闭方案。例如:

If CheckBoxTrain.CheckState = CheckState.Checked Then Me.Hide() Form2.Show() ElseIf CheckBoxTrain.CheckState = CheckState.Unchecked And CheckBoxEvaluate.CheckState = CheckState.Checked Then Me.Hide() Form3.Show()

在form2的代码末尾,我检查是否还检查了第二个复选框:

If Form1.CheckBoxTrain.CheckState = CheckState.Checked And Form1.CheckBoxEvaluate.CheckState = CheckState.Checked Then
            Form3.Show()
            Me.Hide()
        End If

然后在Form3中有一个按钮,在按下它之后我拥有所有代码:

Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
    For i = 1 To n_monte

        Button1.Enabled = False
        Button2.Enabled = True

        BackgroundWorker1.WorkerSupportsCancellation = True
        BackgroundWorker1.WorkerReportsProgress = True

        BackgroundWorker1.RunWorkerAsync()

    Next
End Sub

我想要的只是最后一段代码是开始运行而不按任何按钮(仅适用于选中两个复选框的情况)

1 个答案:

答案 0 :(得分:0)

Boolean中声明Form3属性,并根据是否检查了Form1CheckBoxes中设置该属性。在Load的{​​{1}}事件处理程序中,根据该属性的值启动Form3或不要。