1 respuesta
Gabo, tienes varias maneras de resolver esto, pero tomando como punto de partida lo que ya armaste en el formulario, podes agregar un botón que sea "Calcular" (nombre btnCalcular) por ej. entonces le das doble click para que te cree la función y en ellas puedes editar lo sig.
Private Sub btnCalcular_Click(sender As System.Object, e As System.EventArgs) Handles btnCalcular.Click
' Variable para guardar el valor de las categorias
Dim precioCategorias As Decimal = 0
Select Case CInt(Me.cbCategoria.SelectedValue)
Case 0 ' SIMPLE
precioCategorias = 50
Case 1 ' DOBLE
precioCategorias = 75
Case Else ' SUITE
precioCategorias = 100
End Select
' Variable para guardar los dias
Dim dias As Integer = 0
dias = CInt(Me.cbCantidadDias.SelectedValue) + 1
' Variable para guardar los adicionales
' que al ser checkBox puede tener varios seleccionados
Dim Adicionales As Decimal = 0
If Me.chbEntretenimiento.Checked Then
Adicionales = 100
End If
If Me.chbTraslado.Checked Then
Adicionales += 50
End If
If Me.chbEspect.Checked Then
Adicionales += 200
End If
'Finalmente el mostrar el resultado
Me.txtTotalPagar.Text = FormatCurrency(((precioCategorias * dias) + Adicionales), 2)
End Sub
Aclaraciones
1-No lo he probado asi que testealo y fijate con el depurador cualquier cosa.
2-Si es para probar código y testear es una aproximación del resultado por la forma que planteas el problema, ya que hay formas mejores de resolver y/o plantear la solución. Tene en cuenta que de esta forma te deja atado en el código volver a replantear los valores si es que hay algun cambio de precios y/o modalidad.
Birn, trate de darte una visión simple a tu pregunta para que puedas ver como trabaja el código.
Te recomiendo que si lo vas entendiendo busques un manera mas eficaz, que sin duda las hay de resolver y mediante pruebas y error también vas a ir aprendiendo.
Saludos.
Alex
Arg.
Private Sub btnCalcular_Click(sender As System.Object, e As System.EventArgs) Handles btnCalcular.Click
' Variable para guardar el valor de las categorias
Dim precioCategorias As Decimal = 0
Select Case CInt(Me.cbCategoria.SelectedValue)
Case 0 ' SIMPLE
precioCategorias = 50
Case 1 ' DOBLE
precioCategorias = 75
Case Else ' SUITE
precioCategorias = 100
End Select
' Variable para guardar los dias
Dim dias As Integer = 0
dias = CInt(Me.cbCantidadDias.SelectedValue) + 1
' Variable para guardar los adicionales
' que al ser checkBox puede tener varios seleccionados
Dim Adicionales As Decimal = 0
If Me.chbEntretenimiento.Checked Then
Adicionales = 100
End If
If Me.chbTraslado.Checked Then
Adicionales += 50
End If
If Me.chbEspect.Checked Then
Adicionales += 200
End If
'Finalmente el mostrar el resultado
Me.txtTotalPagar.Text = FormatCurrency(((precioCategorias * dias) + Adicionales), 2)
End Sub
Aclaraciones
1-No lo he probado asi que testealo y fijate con el depurador cualquier cosa.
2-Si es para probar código y testear es una aproximación del resultado por la forma que planteas el problema, ya que hay formas mejores de resolver y/o plantear la solución. Tene en cuenta que de esta forma te deja atado en el código volver a replantear los valores si es que hay algun cambio de precios y/o modalidad.
Birn, trate de darte una visión simple a tu pregunta para que puedas ver como trabaja el código.
Te recomiendo que si lo vas entendiendo busques un manera mas eficaz, que sin duda las hay de resolver y mediante pruebas y error también vas a ir aprendiendo.
Saludos.
Alex
Arg.