2009-05-06 12 views
10

Cada vez que escribo un colocador cuya Value valor de la propiedad no es descriptible en línea, maldigo el hecho de que la API no marca la clase Setter con [ContentProperty("Value")], lo que permitiría a esto:¿Hay una buena razón por la que Setter.Value no es una propiedad de contenido?

<Setter Property="BitmapEffect"> 
    <Setter.Value> 
    <OuterGlowBitmapEffect GlowColor="#AAC" Opacity="0.2" GlowSize="1.25" /> 
    </Setter.Value> 
</Setter> 

.. .ser simplificado a esto:

<Setter Property="BitmapEffect"> 
    <OuterGlowBitmapEffect GlowColor="#AAC" Opacity="0.2" GlowSize="1.25" /> 
</Setter> 

Así que mi pregunta es un poco doble. En primer lugar, ¿hay una buena razón para que la API no se haya configurado de esta manera? En segundo lugar, ¿hay algo que detenga mi metadata disponible para el XamlReader de alguna manera, a pesar de que no controlo la API de WPF?

+1

¡Buen punto con ContentProperty! 1 de ventaja – Stimul8d

Respuesta

2

Buen punto de hecho ... Pero usted podría crear fácilmente su propia clase de Setter heredada de System.Windows.Setter, poner el atributo ContentProperty en él, y usarlo en lugar del Setter estándar.

Cuestiones relacionadas