Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
App. WinForms / WPF .NET
Resize form - Toolstriplabel
domenica 22 giugno 2008 - 13.58
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
edward_radical
Profilo
| Newbie
39
messaggi | Data Invio:
dom 22 giu 2008 - 13:58
All'interno di un form ho un toolstrip al quale, considerato che per definizione non può visualizzare testo (ma ha comunque il parametro text??) in quanto è un semplice contenitore, ho aggiunto una toolstriplabel che contiene alcune informazioni descrittive.
I problemi nascono in fase di resize orizzontale del form in quanto se la dimensione diventa inferiore a quella del testo contenuto nella toolstriplabel questa sparisce..
Ho trovato ad impostare l'attributo visible a true al toolstrip e alla toolstriplabel in fase di resize del form, ma senza alcun risultato...anzi ho ottenuto un overflow!
Quello che vorrei ottenere è che in fase di resize se il testo della toolstriplabel non è visibile venga tagliato, ma comunque visibile.
Avete qualche consiglio?
Grazie in anticipo.
aiedail92
Profilo
| Expert
993
messaggi | Data Invio:
dom 22 giu 2008 - 15:10
Ciao
In realtà la ToolStripLabel non sparisce, ma viene inviata (se la porprietà CanOverflow del ToolStrip lo consente) ad un menu di Overflow, dove vengono inseriti gli elementi che per ragioni di spazio non riescono a stare nel ToolStrip. Non puoi annullare questo comportamento (la disabilitazione dell'Overflow nasconde semplicemente il pulsante per selezionare gli elementi "di troppo", ma non fa sì che questi non vengano nascosti), ma puoi sempre stabilire delle "priorità", cioè decidere quali elementi debbano essere mandati al menu di Overflow quando necessario. Per farlo imposta la proprietà Overflow della ToolStripLabel su Never. In questo modo prima di mandare al menu di Overflow quella ToolStripLabel, verranno mandati gli altri elementi, e quindi, solo se ancora non c'è abbastanza spazio, la tua ToolStripLabel.
Luca
edward_radical
Profilo
| Newbie
39
messaggi | Data Invio:
lun 23 giu 2008 - 01:08
Grazie per l'informazione!
Considerata l'impossibilità di realizzare quanto descritto, ho cambiato approccio.
Ho utilizzato una semplice label della quale nell'evento resize del form ho manipolato le proprietà:
- autosize
- width
- autoellipsis
in modo tale da gestire manualmente il resize. L'effetto è riuscito, se la label non ci sta viene tagliata e tramite l'autoellipsis vengono impostati i (...) che in windows rappresentano la presenza di altro testo e viene emesso un tooltip che contiene completamente il testo tagliato.
Metodo forse poco elegante, ma efficace.
Grazie ancora per l'aiuto
aiedail92
Profilo
| Expert
993
messaggi | Data Invio:
lun 23 giu 2008 - 11:31
Era quello che ti avrei suggerito io
Ti do un consiglio: invece che ricambiare tutte le volte le proprietà sul resize, impostale una volta sola, in modo da velocizzare l'esecuzione. Inoltre, invece che ridimensionare a mano la label, puoi impostare la proprietà Anchor (Top, Left, Right) così la label si ridimensiona automaticamente lasciando invariate le distanze dai bordi.
Luca
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !