FastReport无法根据字数超出文本框高度而去改变字体大小,所以写了以下方法简单提供一个思路
1 private void Text_AfterData(object sender, EventArgs e) 2 { 3 double maxHeight=337; 4 double txtHeight=((TextObject)sender).Height; 5 6 if(txtHeight>maxHeight) 7 { 8 ((TextObject)sender).Font=new Font("Microsoft Sans Serif,",11,System.Drawing.FontStyle.Bold); 9 ((TextObject)sender).Height=(float)maxHeight; 10 } 11 } 12
简单来说,逻辑为:
1.设置变量高度最大值,允许Text高度自适应,(CanGrow=true)
2.赋值后触发方法,检测是否高度的变化是否超出最大值,超出的话改变高度为最大值,并重新赋值字体设置
标签:字体大小,sender,文本框,maxHeight,FastReport,TextObject From: https://www.cnblogs.com/guangfangxiaokeai/p/18346745