ラベルに表示されている値によって異なる色でラベルを返すクラスから関数を呼び出しています。クラスからの値をフォームに返します
Function GetLabelColor(value As Integer) As Color
If value <= 3.9 Then
Return Color.Green
ElseIf (value >= 4) And (value <= 6.9) Then
Return Color.Orange
ElseIf value >= 7 Then
Return Color.Red
End If
End Function
そして形で、私はそれを呼び出すために、このコードを使用しています:下記の方法である
Dim uicommon = New CommonUI()
Dim labelColor = uicommon.GetLabelColor(Integer.Parse(lblResultadoTotal.Text))
lblResultadoTotal.ForeColor = labelColor
lblGB.ForeColor = labelColor
しかし、いくつかの理由のためにそれは私に価値がある場合でも、唯一の緑の色を返します。 3.9より大きい。私を助けてくれる解決策はありますか?
あなたは実際にどのような価値をこのメソッドに渡していますか? – Steve
'Integer.Parse(" 3.9 ")'を実行しようとすると例外が発生するはずです。例外を無視している可能性はありますか?私は[mcve]を作成することをお勧めします。 – Heinzi
あなたのコードを試しましたが、問題を再現できません。 (もちろん、Integer.Parseで "1"や "5"や "9"のような整数に変換できる文字列を渡します)整数の代わりにdouble値に切り替えると、コードにバグがあります3.91(または6.91)の値でコードが失敗するため – Steve