У меня есть функция, которая вычисляет totalPrice и возвращает ее в моем totalPriceOutputLabel. Моя проблема в том, что мне нужно, чтобы вывод был отформатирован, например, как «1,222». Я знаю, как преобразовать его как таковой, используя
ToString("C2")
Но я не уверен, как прикрепить его к моему вызову функции. Любые идеи?
Public Class tileLimitedForm
Private enteredLength, enteredWidth As Double
Private enteredPrice As Decimal
Public Function area(ByRef enteredLength As Double, ByRef enteredWidth As Double)
area = Val(enteredLength) * Val(enteredWidth)
End Function
Public Function totalPrice(ByRef enteredLength As Double, ByRef enteredWidth As Double)
totalPrice = Val(area(enteredLength, enteredWidth)) * Val(enteredPrice)
End Function
Private Sub calculateButton_Click(sender As Object, e As EventArgs) Handles calculateButton.Click
totalPriceOutputLabel.Text = totalPrice(area(enteredLength, enteredWidth),enteredPrice).ToString("C2")
End Sub
1 ответ
Именно так:
totalPriceOutputLabel.Text = _
totalPrice(area(enteredLength, enteredWidth), enteredPrice).ToString("C2")
Предполагается, что totalPrice - это Double
или другой числовой тип, который поддерживает расширение .ToString()
с параметром формата.
ИЗМЕНИТЬ
Увидев отредактированный вопрос:
Public Class tileLimitedForm
Private enteredLength, enteredWidth As Double
Private enteredPrice As Decimal
Public Function area(ByVal enteredLength As Double, ByVal enteredWidth As Double) As Double
area = enteredLength * enteredWidth
End Function
Public Function totalPrice(ByVal enteredLength As Double, ByvalenteredWidth As Double) As Double
totalPrice = area(enteredLength, enteredWidth) * enteredPrice
End Function
Private Sub calculateButton_Click(sender As Object, e As EventArgs) Handles calculateButton.Click
totalPriceOutputLabel.Text = totalPrice(area(enteredLength, enteredWidth), enteredPrice).ToString("C2")
End Sub
End Class
Примечания:
- В этом случае вы должны использовать
ByVal
вместоByRef
в своей функции - Ваша функция в настоящее время возвращает
Object
, поскольку вы не установили тип, который возвращает функцию (у вас отключена опция Option Strict) => Я добавилAs Double
. - Нет необходимости использовать
Val
, поскольку параметры уже являются числовыми типами.
Похожие вопросы
Новые вопросы
vb.net
Visual Basic.NET (VB.NET) - это мультипарадигмальный, управляемый, типобезопасный, объектно-ориентированный язык компьютерного программирования. Наряду с C # и F # это один из основных языков, нацеленных на .NET Framework. VB.NET можно рассматривать как эволюцию Microsoft Visual Basic 6 (VB6), но реализованную в Microsoft .NET Framework. НЕ ИСПОЛЬЗУЙТЕ этот тег для вопросов VB6, VBA или VBScript.