【问题标题】:How to show a form's custom property at design time?如何在设计时显示表单的自定义属性?
【发布时间】:2010-10-22 15:55:44
【问题描述】:

我有一个表单,我在其中创建了一个自定义属性 DataEntryRole,并将其 Browsable 属性设置为 True,如图所示:

<Browsable(True)> _
Public Property DataEntryRole() As UserRole.PossibleRoles
    Get
        Return mDataEntryRole
    End Get
    Set(ByVal value As UserRole.PossibleRoles)
        mDataEntryRole = value
    End Set
End Property

(UserRole.PossibleRoles 是一个枚举)

当我查看表单的设计器时,DataEntryRole 没有出现在属性框中。我假设如果我要创建从这个基本表单继承的另一个表单,它应该会出现,但这不是我想要的。我希望此属性以我当前的形式显示。

这可能吗?如果是这样,怎么做?如果不是,您认为什么是可行的替代方案?

【问题讨论】:

    标签: .net vb.net forms properties


    【解决方案1】:

    最后,我创建了一个 Form 的子类,并将我想要的属性添加到该子类中。然后我将我的表单设置为从该子类继承,属性现在显示在属性框中。我仍然很好奇是否有一种方法可以在不创建 Form 子类的情况下完成我所要求的操作。

    【讨论】:

      【解决方案2】:

      我认为您的自定义属性未显示在“属性”窗口中的原因是您使用了自定义枚举。如果您使用原始类型(int、bool、string 等),则它们会显示出来,因为它们很容易在“属性”窗口中进行编辑。

      【讨论】:

      • 我也是这么想的,但是我尝试将属性及其底层成员 (mDataEntryRole) 设置为 String,但该属性仍然没有显示在设计器中。
      猜你喜欢
      • 1970-01-01
      • 2016-08-11
      • 1970-01-01
      • 2014-05-16
      • 1970-01-01
      • 2011-11-06
      • 1970-01-01
      • 2021-08-15
      相关资源
      最近更新 更多