2009-06-11 15 views

risposta

47

È possibile utilizzare un viewBox visivamente zoom qualcosa per adattarsi nel suo contenitore. Le altre soluzioni qui funzionano, ma allungano solo il controllo, non il suo contenuto. Il ViewBox allungherà entrambi.

<!-- Big grid, will stretch its children to fill itself --> 
<Grid Width="1000" Height="1000"> 
<!-- The button is stretched, but its text remains teeny tiny --> 
<Button> 
    <!-- The viewbox will stretch its content 
    to fit the final size of the button --> 
    <Viewbox 
     Margin="4" 
     VerticalAlignment="Stretch" 
     Height="Auto"> 
     <!-- The textblock and its contents are 
     stretched to fill its parent --> 
     <TextBlock 
      Text="Bartenders" /> 
    </Viewbox> 
</Button> 
</Grid> 
+1

Grazie Will, ho pensato che * fosse * possibile, ma avevo la visione di dover associare la proprietà della dimensione del carattere. – Mark

+0

Bella soluzione ma potrebbe uccidere le prestazioni ... :-( –

+0

@ Jmix90: qualsiasi numero effettivo di prestazioni? Sarebbe comprensibile se tu avessi molti di questi controlli su un modulo e li stavi ridimensionando spesso. t fino a quando non lo sono. – Will

0

Usa DockPanel come contenitore principale

<DockPanel> 
    <TextBlock /> 
</DockPanel> 
1

Set HorizonalAlignment/VerticalAlignment per "allungare".

2

Dipende contenitore principale

griglia, DockPanel allungherà il vostro controllo StackPanel, WrapPanel lascerà al controllo a misura stessa ..

Problemi correlati