Propriedade anexada da lista de tipos
Eu quero criar uma propriedade anexada que pode ser usada com esta sintaxe:
<Button>
<Image .../>
<ui:ToolbarItem.DisplayFilter>
<TabItem .../>
<TabItem .../>
<TabItem .../>
</ui:ToolbarItem.DisplayFilter>
</Button>
Esta é minha tentativa de fazer isso:
public class ToolbarItem
{
/// <summary>
/// Identifies the DisplayFilter attached property.
/// </summary>
public static readonly DependencyProperty DisplayFilterProperty =
DependencyProperty.RegisterAttached(
"DisplayFilter",
typeof( IList ),
typeof( ToolbarItem )
);
public static IList GetDisplayFilter( Control item ) {
return (IList)item.GetValue( DisplayFilterProperty );
}
public static void SetDisplayFilter( Control item, IList value ) {
item.SetValue( DisplayFilterProperty, value );
}
}
Isso, no entanto, está causando uma exceção no tempo de análise - System.ArgumentException: TabItem não é um valor válido para a propriedade 'DisplayFilter'. Então, como eu configuro minha propriedade anexada para que eu possa usar a sintaxe XAML desejada?