我目前创建了下面的类。出于某种原因,尽管我无法访问通过我的xaml样式创建的属性。访问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">
此时出现“Invalid PropertyDescriptor value”错误。
我该怎么做才能使这个属性可访问?
编辑:我曾尝试创建一个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)>
,但这似乎没有做任何事情。
任何线索我做错了什么?