2016-11-17 2 views
-1

Мне нужно рассчитать сумму скидки всех значений в другой форме ListBox, а затем напечатать это значение как в форме скидки, так и в основной форме.Изменить значение метки в другой форме

Код скидки Форма:

Private Sub btnCalculateVisit_Click(sender As Object, e As EventArgs) Handles btnCalculateVisit.Click 

    Dim dblVisits As Double = 0 

    If (IsNumeric(txtVisits.Text)) Then 

     If txtVisits.Text >= 0 And txtVisits.Text <= 3 Then 
      dblVisits = (dblVisitRates(0) * GlobalVariables.price) 

     ElseIf txtVisits.Text >= 4 And txtVisits.Text <= 8 Then 
      dblVisits = (dblVisitRates(1) * GlobalVariables.price) 

     ElseIf txtVisits.Text >= 9 And txtVisits.Text <= 13 Then 
      dblVisits = (dblVisitRates(2) * GlobalVariables.price) 

     ElseIf txtVisits.Text >= 14 And txtVisits.Text <= 1000000 Then 
      dblVisits = (dblVisitRates(3) * GlobalVariables.price) 

     End If 

    End If 

    lblDiscountAmount.Text = "$" + dblVisits.ToString 

End Sub 

Private Sub btnClose_Click(sender As Object, e As EventArgs) Handles btnClose.Click 

    Dim main As New MainForm() 

    main.lblDisRate.Text = GlobalVariables.dblType.ToString 

    Me.Close() 

End Sub 

Расчетные печатает на форме скидок, но не изменяет метку в главной форме. Как мне это сделать?

+0

Создайте метод в «основной форме», чтобы принять информацию, передать данные. – Plutonix

+1

Код в 'btnClose_Click' не обновляет метку в вашей основной форме. Он создает новую копию основной формы (которая никогда не отображается), обновляя метку в этой копии, а затем позволяя ее закрывать. – Blackwood

+0

Я добавил код обновления в btnClose_Click sub, и он все еще ничего не показывает. Main.lblDisRate.Text = GlobalVariables.disRate.ToString main.lblDisRate.Update() –

ответ

0

попробуйте использовать свойство caption и обновите его до формы.

lblDiscountAmount.Caption = "$" + dblVisits.ToString 
Me.refresh 
Смежные вопросы