2011-11-03 11 views
6

no es una forma de especificar algo como esto en WPF:estilos en cascada en WPF (al estilo CSS)

CSS:

#someSpan input { color: #f1f1f1; } 
or 
span input { color: #f1f1f1; } 

sentido, me gustaría tener todos los elementos TextBlock dentro de contenedores sigue el estilo x, sin tener que aplicar el estilo a cada bloque de texto.

solo para aclarar, tengo que hacer algo como esto en WPF.

que sé sobre el atributo BasedOn de un estilo .. pero eso no es todo lo que estoy buscando aquí

buscando algo como esto

<Style x:Key="FileItem" TargetType="{x:Type #SomeContainer TextBlock}"> 

o tal vez dentro de SomeContainer, añadir un TextBlock estilo que se aplicará a todos sus bloques de texto

+0

¿Esto resuelve el problema? http://stackoverflow.com/questions/5745001/xaml-combine-styles –

Respuesta

4

En cuanto a la última parte de su pregunta, si desea aplicar un estilo a todos TextBlock s dentro de un elemento en particular, simplemente coloque el Style dentro de esos elementos resou rces:

<TextBlock /> <!-- unaffected --> 

<Grid> 
    <Grid.Resources> 
     <Style TargetType="TextBlock"> 
      <!-- ... --> 
     </Style> 
    </Grid.Resources> 

    <TextBlock /> <!-- will be styled --> 
</Grid> 

Si han guardado sus estilos en un separada ResourceDictionary entonces se puede "importar" a todos ellos por un elemento particular de diccionarios de recursos fusión:

<Grid> 
    <Grid.Resources> 
     <ResourceDictionary> 
      <ResourceDictionary.MergedDictionaries> 
        <ResourceDictionary Source="/Resources/MyOtherStyles.xaml" /> 
      </ResourceDictionary.MergedDictionaries> 
     </ResourceDictionary> 
    </Grid.Resources> 

    <TextBlock /> <!-- will be styled --> 
</Grid> 
+0

buen punto ... aunque tengo todos mis estilos definidos en un .xaml separado ... supongo que aún puedo apuntar la definición anterior a un recurso estático. .. –

+0

sí, esto prácticamente hace lo que necesito ... sin embargo, todavía me gustaría no tener que crear anulaciones locales para cada elemento ...