Qualche mese fa in questo blog avevo presentato una classe che consente di aggiungere i file recenti alla propria applicazione. Il codice in questione conteneva un metodo di nome ShortenPathName che, ricevuto in ingresso il percorso completo di un file, restituiva una stringa in cui, se necessario, al posto dei nomi delle cartelle venivano inseriti i tre puntini (...) allo scopo di "accorciarla" per la visualizzazione all'interno del menu.
In realtà , il .NET Framework fornisce nativamente il metodo TextRenderer.MeasureText, che consente di ottenere lo stesso risultato con una sola riga di codice:
public string ShortenPath(string str, int width, Font font) { string ret = string.Copy(str); TextRenderer.MeasureText(ret, font, new Size(width, 0), TextFormatFlags.PathEllipsis | TextFormatFlags.ModifyString); return ret; }
Print | posted on martedì 10 aprile 2007 21:32 | Filed Under [ C# ]
Powered by:
Copyright © Marco Minerva