2009-02-17 18 views
0

我試圖實現一個類似Firefox Awesome Bar的.NET控件。爲此,我試圖在用ListView顯示的搜索結果中加粗和下劃線搜索字符。我已經設置了OwnerDraw,並且使用Graphics.MeasureCharacterRanges來計算字符的大小。我遇到的問題是,從該方法傳回的值並不總是完美的。我最終會在這裏或那裏出現一些額外的像素,或者兩個字符太靠近彼此。有一個簡單的解決方法嗎?用不同字體設置繪製同一單詞不同部分的另一種方法?用C#中的OwnerDraw ListView進行字符對齊#

回答

0

我想通了。我不得不切換到使用TextRenderer.DrawText和TextRenderer.MeasureText。我確保將TextFormatFlags.NoPadding傳遞給這兩種方法。