我有一个基本的数学测试程序和2个表单,允许用户选择要测试的功能。
第一个表单包含一个带有4个基本数学函数的单选按钮列表和一个用于加载下一个表单的按钮。 第二个表单在Load ...
中包含此代码 'Change function sign to reflect chosen option
If frmOptions.rdoAdd.Checked Then
lblFunc.Text = "+"
ElseIf frmOptions.rdoSub.Checked Then
lblFunc.Text = "-"
ElseIf frmOptions.rdoMult.Checked Then
lblFunc.Text = "x"
ElseIf frmOptions.rdoDiv.Checked Then
lblFunc.Text = "÷"
End If
如果我更改了表单1中属性的Checked字段,它将转到表单2。 但是,如果我使用单选按钮选择不同的选项,请使用表单1中的默认选项形成2个。
修改
根据输入更改了几行,但仍然遇到此问题。 我会再次经历它。
在步骤3中,根据frmOption中的Checked单选按钮应该更改的frmTest上的标签永远不会改变。它甚至没有在表单的第一次加载时改变,所以我认为单选按钮的Checked属性出了问题。
希望这可以解决一些问题。
答案 0 :(得分:0)
似乎没有足够的信息可以确定。
听起来你的第一个表单是第一次使用值加载第二个表单,但是在后续调用中它不会加载第二个表单,因为它已经加载了。这听起来不错吗?
如果是这样,那么你可能在第一个表单上设置了传递给第二个表单的值。而是在第二个表单上创建属性并首先加载它。然后让第一个表单操纵这些属性。
答案 1 :(得分:0)
尝试在单选按钮更改时触发事件,而不是在加载form2时触发。
答案 2 :(得分:0)
尝试使用Form2.Shown
事件代替Form2.Load
。
表单只加载一次,但可以多次显示。
答案 3 :(得分:0)
你试过吗
If My.Forms.Form1.Radiobutton_Name.Checked = True Then
lblFunc.Text = "+"
ElseIf My.Forms.Form1.Radiobutton_Name.Checked = True Then
lblFunc.Text = "-"
ElseIf My.Forms.Form1.Radiobutton_Name.Checked = True Then
lblFunc.Text = "x"
ElseIf My.Forms.Form1.Radiobutton_Name.Checked = True Then
lblFunc.Text = "÷"
End If