如何在报表的文本框控件中动态设置字体大小,使文本框的内容适合其尺寸?我的想法是根据next函数的值在循环中减小字体大小:
Private Function IsContentsBiggerThanTextBox(ByVal textBox As TextBox) As Boolean
Dim size As Size = TextRenderer.MeasureText(textBox.Text, textBox.Font)
Return ((size.Width > textBox.Width) OR (size.Height > textBox.Height))
End Function
问题是我不知道如何将报告文本框的引用传递给函数。
1条答案
按热度按时间bxgwgixi1#
在多次尝试寻找在本地rdlc报告中工作的代码之后,我终于设法编写了在textbox控件中动态调整字体大小的函数,这取决于其中文本的大小。这个想法是测量文本框控件中的文本大小,如果我们发现文本高度高于文本框控件的高度,我们就减小字体的大小,直到文本适合控件。
首先,您必须在报表属性中添加对System.Drawing的引用。
rdlc报告中的所有代码都必须用vb.net编写。在报表属性的代码字段中添加以下函数:
选择要动态更改其字体大小的文本框控件,并在FontSize属性中添加以下代码:
文本框的宽度和高度必须输入厘米。文本框的CanGrow和CanShrink属性必须设置为False。