我在将此 vb.net 行翻译成严格证明时遇到问题
[Enum].GetValues(GetType(ReferenceOutput))(DataGrid1.SelectedIndex)
ReferenceOutput 是一个类, datagrid1.selectedindex 是在 datagrid 中选择的。我如何将其转化为严格的证明行。我现在收到以下错误。
Error 1 Option Strict On disallows late binding.
谢谢
最稳健的方法是使用Enum.TryParse
新的通用方法:
Dim refOutput As ReferenceOutput
Dim enumValue = DataGrid1.SelectedIndex.ToString()
If [Enum].TryParse(enumValue, refOutput) Then
Console.WriteLine("Converted '{0}' to {1}.", enumValue, refOutput.ToString())
Else
Console.WriteLine("{0} is not a member of the ReferenceOutput enumeration.", enumValue)
End If
这是旧的冗长、未经检查的拆箱方法:
Dim refOutput As ReferenceOutput = DirectCast([Enum].Parse(GetType(ReferenceOutput), DataGrid1.SelectedIndex.ToString(), True), ReferenceOutput)