以下简单表达式在我的结尾处引发ArgumentOutOfRange
:
100.ToString("X4")
我尝试用其他常量值和整数变量替换100
,并得到相同的结果。我已将X4
更改为X6
,只更改X
,再次获得相同的异常。错误消息是:
Enum value was out of legal range.
有没有人见过这个,或者我错过了一些非常简单的东西?
这是一个完整的小程序,可以在我的最终重现它(A Console Win应用程序,添加对System.Drawing的引用):
Imports System.drawing
Module Module1
Sub Main()
Dim x As New ColorRange()
Console.Write(x.ToString())
Console.Read()
End Sub
Class ColorRange
Public Overrides Function ToString() As String
Return 100.ToString("X") & " - " & 100.ToString("X")
End Function
End Class
End Module
看起来错误(bug?)在调试器中。该值在运行时打印正常。感谢Jon。如果有人有兴趣,这是VS2010 Ultimate SP1 + Win 7(64位)。