В настоящее время я создал класс ниже. По какой-то причине я не могу получить доступ к свойствам, которые я создал через мой стиль xaml.
Public Class Ribbon : Inherits Button
Private mpopDropdown As Popup
Public Property Dropdown() As Popup
Get
Return mpopDropdown
End Get
Set(ByVal value As Popup)
mpopDropdown = value
End Set
End Property
...
End Class
<Style TargetType="{x:Type s:Ribbon}">
<Setter Property="Ribbon.Dropdown">
В этот момент возникает ошибка «Неверное значение PropertyDescriptor».
Что я могу сделать, чтобы сделать эту собственность доступной?
РЕДАКТИРОВАТЬ: Я также пытался создать DependencyProperty
, поскольку я прочитал, что это может решить мою проблему, но это не похоже.
РЕДАКТИРОВАТЬ 2: Я пытался
Public Shared Readonly DropdownProperty as DependencyProperty = _
DependencyProperty.Register("Dropdown",GetType(Popup),GetType(Ribbon), _
New FrameworkPropertyMetadata(False))
и
Public Shared Readonly DropdownProperty as DependencyProperty = _
DependencyProperty.Register("Dropdown",GetType(Popup),GetType(Ribbon), _
New FrameworkPropertyMetadata(True))
но они, похоже, тоже не выставляют собственность. Я также пометил свойство как <Bindable(True)>
, но это, похоже, ничего не делает.
Есть какие-нибудь подсказки, что я делаю неправильно?