【发布时间】:2011-12-12 15:45:37
【问题描述】:
我正在开发 SSRS 2008 中的 tablix,并希望我的列自动调整大小(仅宽度)以适应其内容。 CanGrow 只影响身高。是否有我缺少的属性或任何其他方式来操纵列来执行此操作?
【问题讨论】:
-
此方案依赖于添加动态宽度图表来创建Dynamic Column Width in Tablix
标签: reporting-services width ssrs-2008
我正在开发 SSRS 2008 中的 tablix,并希望我的列自动调整大小(仅宽度)以适应其内容。 CanGrow 只影响身高。是否有我缺少的属性或任何其他方式来操纵列来执行此操作?
【问题讨论】:
标签: reporting-services width ssrs-2008
【讨论】:
这可能不是您要寻找的答案,但必须一次调整 100 多个列的宽度并不好玩,而且这个小技巧确实可以节省时间。
试试这个方法。如果您发现任何更好的或改进的地方..请告诉我!
【讨论】:
我通过使用“EMAIL”字段的表达式解决了这个问题,其中包含一个包含电子邮件地址的表格:
=Replace(Fields!EMAIL.Value, "@", System.Environment.NewLine & "@")
如果您在说 15 个字符后需要它(每 15 个字符后插入 System.Environment.NewLine 代码),您可以执行类似的操作。
【讨论】:
如 here 所述,解决此问题的一个简单方法是在您的 tablix 中添加一行并将图表插入相应的列。
然后将其DynamicWidth 更改为如下表达式=iif(True, "4cm", "2cm") 并将其DynamicHeight 更改为“0cm”。
【讨论】:
我们可以动态改变宽度。按照以下步骤进行
步骤1:再添加一列
step2:将添加的列与原始列合并
步骤3:根据您的要求为额外列添加列可见性表达式
你还是没有得到然后看附图
【讨论】:
更改列宽
在“设计”视图中,单击 Tablix 数据区域中的任意位置以将其选中。灰色列句柄出现在 Tablix 数据区域的外边框上。
将鼠标悬停在要展开的列句柄边缘。出现一个双向箭头。 单击以抓住列的边缘并向左或向右移动以调整列宽。
查看下面的图片:(由于分数低,我无法在此处发布图片) http://i.stack.imgur.com/FvCQF.jpg
参考:http://technet.microsoft.com/en-us/library/cc645971(v=sql.100).aspx
【讨论】:
我自己(客户端)一直在尝试这样做,但没有成功。没有可以自动调整列宽的属性。
查看这个解决方法:http://blog.sharepointalist.com/2009/05/ssrs-column-width-auto-size.html(我还没有测试过)
我为客户端报告找到的最佳解决方法是在代码中设置列的宽度或使用多个列并根据字符串长度条件显示/隐藏它们。
例如,名为 AccNum2 的列:
report.DetailSection1.ReportObjects.Item("AccNum2").width = 200
有关详细信息和其他想法,请参阅此线程: http://social.msdn.microsoft.com/forums/en-US/sqlreportingservices/thread/9e6043f1-c458-4540-be59-d37b02feab8a/
【讨论】: