То, почему делает текстовое свойство, переопределенное в пользовательском элементе управления, не показывает во время проектирования

У меня есть usercontrol, который переопределяет текст свойства. Но это свойство не показывают во время проектирования.

Если я переименовываю его для ввода субтитров, или оценить это показывают в свойствах во время проектирования, но текст не показывают.

public Class SomeControl
    Inherits System.Windows.Forms.UserControl

    Public Overrides Property Text() As String
        Get
            Return lblText.Text
        End Get
        Set(ByVal value As String)
            lblText.Text = value
        End Set
    End Property
End Class

Что сделать?

13
задан Sachin Chavan 20 May 2010 в 12:33
поделиться

2 ответа

Добавлены следующие атрибуты, и проблема решена.

    <EditorBrowsable(EditorBrowsableState.Always)> _
    <Browsable(True)> _
    <DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)> _
    <Bindable(True)> _
    Public Overrides Property Text() As String
        Get
            Return lblText.Text
        End Get
        Set(ByVal value As String)
            lblText.Text = value
        End Set
    End Property
15
ответ дан 1 December 2019 в 23:14
поделиться

Свойство Text определяется как:

[Bindable(false), EditorBrowsable(EditorBrowsableState.Never), Browsable(false),
 DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]

Это означает, что вы не можете просматривать его в окне свойств; вам нужно переопределить определенные здесь атрибуты свойств (которые я не знаю, будет ли это работать должным образом) или просто установите для имени свойства другое значение.

HTH.

4
ответ дан 1 December 2019 в 23:14
поделиться
Другие вопросы по тегам:

Похожие вопросы: