WPF Label con controllo del TextWrapping

IL controllo Label in WPF non ha la proprieta TextWrapping, per cui se la Label contiene un testo molto lungo, puo succedere che non venga visualizzato completamente o estenda in modo eccessivo il controllo che contiene la Label.

Per ovviare a questo basta semplicemente inserire un TextBlock all’interno della Label ed impostare la proprieta TextWrapping su Wrap in questo modo

<LabelMaxWidth=“80”><TextBlockText=bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla/>Label>

Se, come nel mio caso, si ha la necessita di sostituire tutte le Label in un applicazione, perche supportino il TextWrapping, allora il lavoro diventa abbastanza lungo.

Per questo ho creato uno UserControl che eredita da label ed espone in piu le proprieta  TextWrap, TextEffects, TextTrimming, ed al posto di Content la proprietà LabelText attraverso la quale è possibile specificare il testo che conterrà la Label.

Come per il controllo EDKGroupBox, anche questo si trova nel namespace EDKControls cosi per utilizzarlo, basta dichiarare nella pagina XAML il namespace in questo modo:

xmlns:EDKControls=“clr-namespace:EDKWpfControls;assembly=EDKWpfControls”

e quindi inserire nella pagina il controllo 

<EDKControls:EDKWrapLabel MaxWidth=“80”LabelText=“bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla bla”TextWrap=Wrap><EDKControls:EDKWrapLabel>

Questa è la classe che definisce il controllo.

VN:F [1.9.22_1171]
Rating: 7.0/10 (1 vote cast)
WPF Label con controllo del TextWrapping, 7.0 out of 10 based on 1 rating

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.