C# 如何在Crystal报表中动态增加公式字段的宽度?
我在我的web应用程序中使用Crystal Reports,它正在动态加载;i、 e.它只显示整行不为空的列。参数的值将在运行时设置 最终,报告的设计将如下所示C# 如何在Crystal报表中动态增加公式字段的宽度?,c#,asp.net,crystal-reports,C#,Asp.net,Crystal Reports,我在我的web应用程序中使用Crystal Reports,它正在动态加载;i、 e.它只显示整行不为空的列。参数的值将在运行时设置 最终,报告的设计将如下所示 param1 param2 param 3 param4 @formula1 @formula2 @formula3 @forumula4 if {?param1}="EventName" Then {dtHealth.EventName} Else If {?param1}="Location"
param1 param2 param 3 param4
@formula1 @formula2 @formula3 @forumula4
if {?param1}="EventName" Then {dtHealth.EventName}
Else If {?param1}="Location" Then {dtHealth.Location}
Else if {?param1}="CashsafeSerialNo" Then {dtHealth.CashsafeSerialNo}
其中,param1、param2、
是显示列标题的参数,@formula1、@formula2、@formula3
是显示详细字段的公式字段
@formula1的详细信息如下
param1 param2 param 3 param4
@formula1 @formula2 @formula3 @forumula4
if {?param1}="EventName" Then {dtHealth.EventName}
Else If {?param1}="Location" Then {dtHealth.Location}
Else if {?param1}="CashsafeSerialNo" Then {dtHealth.CashsafeSerialNo}
这里有一种可能性,param1
可能是EventName
或Location
。我想在运行时设置crystalreport中公式字段的宽度;i、 e
if param1="EventName"
@formula1.width=100px;
else if param1="Location"
@formula1.width=200px
任何帮助都将不胜感激。我不确定,但这个“可以成长”选项将帮助您。您无法应用或很好地尽可能增加宽度以覆盖近场。我所建议的是给固定的宽度,给可以增长的选项,动态地扩展高度。这很好
我的另一个建议是,它是否显示为一行数据。然后制作细节部分,并将字段放入其中,在部分中,专家勾选“保持在一起”
我成功地实现了我想要的功能: 我正在编辑其他人制作的一份报告,他们有大约21个设置列,如果为空,将被抑制。我需要一个顶部描述性列,该列的大小将增长到非抑制字段的大小: e、 g.在以下布局中,任何b-g列都可能被抑制:
----------------------------------
| ID | Dynamic width column |
---------------------------------
| | a | b | c | d | e | f | g |
----------------------------------
| 1 | Data --> |
----------------------------------
好了,您应该获得一个宽度扩展到非空列大小的列。为什么需要此项。您可以设置一个默认宽度,并将
自动宽度指定给要绑定该参数的控件。CanGrow
不同,而AutoWidth
不同。但请告诉我为什么需要此项。已更新问题。请检查一下。这是一个好问题。我不能告诉你有多少次我需要一个字段按宽度增长。我手头没有Crystal的副本可供真正检查,但我相信你可以使用列宽样式公式中的SELECT语句来实现这一点。