2012-05-16 14 views
5

Quiero agregar dos cadenas estáticas para un único contenido o encabezado de un objeto WPF. Algo como esto:Añadir cadenas de recursos WPF

<MenuItem 
    Header="{x:Static properties:Resources.SEARCH_FOR_DAYS} + 
      {x:Static properties:Resources.ELLIPSES}" /> 

He jugado un poco con ContentStringFormat y similares, pero no puede conseguir que se acepte dos recursos.

Respuesta

5
<MenuItem> 
    <MenuItem.Header> 
     <StackPanel Orientation="Horizontal"> 
      <TextBlock Text="{x:Static properties:Resources.SEARCH_FOR_DAYS}" /> 
      <TextBlock Text="{x:Static properties:Resources.ELLIPSES}" /> 
     </StackPanel> 
    </MenuItem.Header> 
</MenuItem> 

alternativa (más cerca de lo que solicitó):

<MenuItem> 
    <MenuItem.Header> 
     <MultiBinding StringFormat="{}{0}{1}"> 
      <Binding Path="{x:Static properties:Resources.SEARCH_FOR_DAYS}"/> 
      <Binding Path="{x:Static properties:Resources.ELLIPSES}"/> 
     </MultiBinding> 
    </MenuItem.Header> 
</MenuItem>  
+0

Fui con su primera respuesta, porque parece ser el más fácil de entender para otro desarrollador. ¡Gracias! – JoeB

+0

Ese es el que normalmente uso también (especialmente cuando necesito agregar otros elementos de UI, como pequeños iconos). Pero me gustaría probar la sugerencia de Tim (+1), ya que podría ser más liviana. – Douglas

4

De la parte superior de mi cabeza, es posible que pueda hacer:

<MenuItem> 
    <MenuItem.Header> 
     <TextBlock> 
      <Run Text="{x:Static properties:Resources.SEARCH_FOR_DAYS}" /> 
      <Run Text="{x:Static properties:Resources.ELLIPSES}" /> 
     </TextBlock> 
    </MenuItem.Header> 
</MenuItem> 
Cuestiones relacionadas