2012-05-11 8 views
9
TextBlock tbl= new TextBlock(); 
tbl.text="Kishore"; 

double x=tbl.ActualHeight; 
double y=tbl.ActualWidth; 

Se eseguo il codice dall'evento caricato in Metro - winRT restituirà 0 per entrambi.come calcolare l'altezza e la larghezza del textbock al caricamento se creo il textblock dal codice?

Come posso ottenere l' nell'evento Loaded o SizeChanged?

+0

WPF aveva metodi come l'organizzazione/misura, hai dato spazio disponibile e ottenuto le dimensioni come risultato. Non c'è qualcosa di simile in Giove? –

risposta

10

Chiama Measure() quindi Arrange() e quindi ActualWidth e ActualHeight verranno aggiornati.

+0

Prima viene chiamato Measure, quindi Arrange. – HCL

+0

Giusto, certo! –

0
TextBlock tbl = new TextBlock(); 
tbl.Text = "Kishore"; 

tbl.Measure(new Size(0, 0)); 

double x = tbl.ActualHeight; 
+1

Una piccola spiegazione potrebbe aiutare. –

1

farlo anche tramite

UpdateLayout(); 
testBlock.ActualWidth 

Questo potrebbe essere utile per il calcolo più oggetti altezze e larghezze.

+0

questo ha risolto il mio problema grazie – hushyon

Problemi correlati