Я написал для этого следующий код, но есть ли более элегантный способ?
У меня есть 2 обнуляемых Enum. Я хочу сравнить их друг с другом, где один или оба могут быть нулевыми. Я должен отдельно проверить равенство и проверить нулевое условие. Есть ли способ лучше?
Private Class a
Public Enum MyColour
Red
Blue
End Enum
Public Property OriginalColour As MyColour?
Public Property NewColour As MyColour?
Public ReadOnly Property HasColourChanged As Boolean
Get
If (OriginalColour.HasValue And NewColour.HasValue) Then 'Both have values so test
'Test if the values are the same
If OriginalColour.Value = NewColour.Value Then
Return False
Else
Return True
End If
End If
'Either one or both values are null
If OriginalColour.HasValue Xor NewColour.HasValue Then
Return True
Else
Return False
End If
End Get
End Property
End Class
compare nullable
и нажмите вторую ссылку. Это так просто. - person Bjørn-Roger Kringsjå   schedule 07.01.2015