我在clr类型Framework
上声明了附加的依赖项属性:
public static readonly DependencyProperty ShowTypeProperty =
DependencyProperty.RegisterAttached("ShowType", typeof(ShowType), typeof(Framework),
new PropertyMetadata(ShowType.Normal));
/// <summary>
/// Gets the ShowType property.
/// </summary>
[AttachedPropertyBrowsableForType(typeof(Window))]
public static ShowType GetShowType(Window w)
{
return (ShowType)w.GetValue(ShowTypeProperty);
}
/// <summary>
/// Sets the ShowType property.
/// </summary>
public static void SetShowType(Window w, ShowType value)
{
w.SetValue(ShowTypeProperty, value);
}
在编辑Window
时,属性会显示在设计器属性列表中,但在编辑TargetType
设置为Window
的Syle时则不会显示。
有谁知道,这是Blend中附加属性和样式设置器的“预期”行为吗?该属性可以在Setm in xaml中手动设置,所以这只是一个方便,但我仍然想知道是否有人有解决方案,或只是澄清这种行为。