Параметры Enum - PullRequest
       7

Параметры Enum

1 голос
/ 10 октября 2008

Я надеюсь найти способ сделать это в vb.net:

Скажем, у вас есть вызов функции getPaint (Color). Вы хотите, чтобы вызов был ограничен значениями параметров (красный, зеленый, желтый). Когда они вводят этот параметр, пользователю предоставляются доступные опции, например, как работает логический параметр.

Есть идеи?

Ответы [ 2 ]

4 голосов
/ 10 октября 2008

, чтобы ограничить перечисление большим количеством значений, всего несколькими вы можете сделать следующее

C #

List<Color> allow = new List<Color> { Color.Red, Color.Green, Color.Yellow };
if (!allow.Contains(color))
{
    throw new ArguementException("Invalid Color");
}

VB

Dim allow As New List(Of Color)()
allow.Add(Color.Red)
allow.Add(Color.Green)
allow.Add(Color.Yellow)
If Not allow.Contains(color) Then
Throw New ArguementException("Invalid Color")
End If
2 голосов
/ 10 октября 2008

Надеюсь, я не пропустил что-то из вашего вопроса. Используйте перечисление как это:

Enum Color
    Red = 1
    Green = 2
    Yellow = 3
End Enum

Когда вы пишете getPaint(Color, а затем. (точка) система Intellisense автоматически предложит три варианта, объявленных в перечислении (красный, зеленый, желтый).

...