【问题标题】:How Can I Create A Custom Property Type如何创建自定义属性类型
【发布时间】:2014-08-21 12:41:52
【问题描述】:

我真的不知道如何正确解释这一点,所以我会尽量简单。

当您创建一个布尔变量(例如)时,您会看到一个小弹出菜单,让您可以选择 True 或 False。

有没有一种方法可以创建一个自定义属性,当被引用时,它会给出一个自定义的可选选项列表?

例如,我想创建一个名为 Car_Model 的新属性,它为用户提供可选择的汽车品牌列表(例如 Holden、Ford、Chevy 等),因此使用该属性类似于:

Dim _car as Car = New Car
Car.Car_Model = {Popup a list of selectable options here, e.g. Model.Holden, Model.Ford, Model.Chevy, etc.}
Car.Name = "Betsy"
...

到目前为止,我只真正使用过一个类中的属性类型,但我想这与创建我自己的“类型”有关。因此,它不是 String 或 Boolean,而是 Car_Model。

希望这是有道理的。 谢谢

【问题讨论】:

    标签: vb.net types properties


    【解决方案1】:

    使用枚举

      Public Enum Car_Model
            none = 0
            Mazda
            Chevy
            Ford
        End Enum
    

    【讨论】:

      【解决方案2】:

      你想要的是一个枚举。你这样定义它:

      Public Enum CarModel
         BMW = 1
         Porsche = 2
         Audi = 3
         Ferrari = 4
      End Enum
      

      然后你可以定义这个类型的变量

      Dim Model As CarModel = CarModel.Porsche
      

      枚举可以理解为命名的整数变量。因此,您基本上也可以将相应的数字分配给变量。并非严格需要为枚举元素分配值,并且可以使用属性定义更多属性。有关详细信息,请参阅 MSDN:

      http://msdn.microsoft.com/en-us/library/8h84wky1.aspx

      【讨论】:

      • 我是在类中使用属​​性(例如 Car)还是在其之外定义枚举?
      • HeyJens,好答案。+1
      • 我将我的枚举创建为它自己的类。只需将类重命名为枚举,如上所示。枚举可以在您的模型中,但我不这样做。
      • 在类中定义它。在哪个类中定义枚举并不重要。您可能需要添加对定义它的类的引用。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-02-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-06-14
      • 1970-01-01
      相关资源
      最近更新 更多