我遇到了問題,並嘗試互聯網和線程在這裏找到一個解決方案,但還沒有找到。 我是一個初學者編程的任何幫助將不勝感激。WPF計算FontSize裏面ViewBox
我有一個窗口,它將顯示在輔助屏幕上,並且一個TextBlock包裝在一個視框中,並且文本被綁定,並且將在運行時在第二個屏幕上以文本方式填充。字體大小也是綁定的,可以由用戶更改。
這工作得很好。 問題在於,當用戶將字體大小增加到更高的值時,如果文本很短,文本看起來不錯,但如果文本非常大,則文本看起來很醜,有時變得不可讀。
我已經試過了視框的Sretch方向拉伸,但還沒有找到更好的辦法來解決我的問題,但如果手動存在很大很長的文本和文本是不可讀減少字體大小,使文本的可讀性。
我該怎麼幫忙。我想到的一種解決方案是計算字體大小,可能根據父網格的高度和寬度,這樣當文本很長時,計算就會將字體大小縮小到可讀性的位置。
這裏是我的樣品的XAML
<Grid>
<Viewbox Stretch="Fill"
StretchDirection="DownOnly">
<TextBlock Text="{Binding}"
Width="{Binding}"
FontSize="{Binding}"
TextWrapping="Wrap">
</TextBlock>
</Viewbox>
</Grid>
Here is the Ugly Behavior when text is very long and fontsize is set highly
Expected behavior. Here the fontsize is manually set lower
你必須處理最小/最大尺寸,而且還可能基於'FontSize'計算'Width',這可以通過'System.Windows.Media.FormattedText'類來完成。 – AnjumSKhan
感謝您的回覆。會試試這個 – Gnyasha