0
为了本地化自定义控件的属性,我做了一个自定义的CategoryAttribute。控制阴影属性的自定义分类属性
<AttributeUsage(AttributeTargets.Property)> _
Public Class LocalisableCategoryAttribute
Inherits CategoryAttribute
Public Sub New(ByVal resourceName As String)
MyBase.New(resourceName)
End Sub
Protected Overrides Function GetLocalizedString(value As String) As String
Return My.Resources.ResourceManager.GetString(value)
End Function
End Class
我的自定义控件有此属性的两个全新的属性,但我为了给他们这个属性也遮蔽了一些“基本”属性(如大小和位置)的。
<LocalisableCategory("Category_Apparence")> _
Public Shadows Property Size As Size
Get
Return MyBase.Size
End Get
Set(value As Size)
MyBase.Size = value
End Set
End Property
最大的问题是,在运行时,有时新的“Apparence”类别将出现,有时旧的“布局”一个会。只有阴影属性有这种奇怪的行为。这完全是随机的。这也不是一个编译的事情。您可以连续两次启动.exe,并且属性网格不会显示相同的结果。有时它会被置于旧的范畴之下,有时也会被置于新的本地范畴之下。
我完全不知所措,因为它是如此随机。谁能帮忙?