Pregunta

Tengo UserControls que contiene otros controles. Quiero que si configuro un color de primer plano para el UserControl, todos los controles secundarios lo heredarán automáticamente. Tengo el mismo problema con el estilo / tamaño de fuente.

¿Puedo configurar estas propiedades de alguna manera para auto / heredar? ¿Es posible configurar todos los subcontroles sin un bucle?

¿Fue útil?

Solución

Puede crear diccionarios de recursos para definir estilos predeterminados globalmente.

También puede hacer referencia a un diccionario de recursos o definir un estilo en cualquier objeto.

En cualquier caso, esos estilos se aplicarán a todos los objetos secundarios que no tengan un estilo definido explícitamente ...

Ejemplo:

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" >
    <!--Default styles that will apply to any object of the specified type (if it doesn't have style set locally)-->
    <Style TargetType="Label" >
        <Setter Property="FontWeight" Value="Bold"/>
        <Setter Property="Margin" Value="0"/>
        <Setter Property="Padding" Value="0"/>
    </Style>
</ResourceDictionary>

Otros consejos

Mira a usar la configuración de Styles y BasedOn.

Recientemente escribí un ejemplo de algo similar ubicado aquí . Desafortunadamente, la pregunta estaba relacionada con Silver Lite, por lo que no respondió a la pregunta, pero creo que puede darle algunas ideas sobre dónde buscar.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top