SSRS tablix列CanGrow属性的宽度?

时间:2011-10-21 14:40:29

标签: reporting-services width ssrs-2008

我正在研究SSRS 2008中的Tablix,并希望我的列可以自动调整(仅限宽度)到其内容。 CanGrow只影响身高。是否存在我缺少的属性或以其他方式操纵列来执行此操作?

7 个答案:

答案 0 :(得分:6)

我一直在努力做到这一点(客户端),没有成功。没有可以自动调整列宽的属性。

查看此解决方法: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/

答案 1 :(得分:2)

正如前面提到的here,对此问题的一个简单解决方法是在Tablix中添加一行并将图表插入相应的列。

然后将其DynamicWidth更改为类似以下=iif(True, "4cm", "2cm")及其DynamicHeight“0cm”的表达式。

Chart on tablix to adjust column width

答案 2 :(得分:1)

来自SHOWKATH VALLI的解决方案最适合我。 一个绝对的天才想法!

这是我实施它的方式:

  1. 在您需要加宽的列的右侧创建一个附加列
  2. 合并单元格
  3. 点击新列的列可见性。
  4. 根据计算隐藏/显示,或者在我的情况下,我的选择语句中的值是一个宽列。
  5. 这是我创建的表达式:= IIF(Fields!Static1Wide.Value = 0,True,False)

答案 3 :(得分:0)

我通过一个包含电子邮件地址的表来解决这个问题,方法是使用“EMAIL'字段:

 =Replace(Fields!EMAIL.Value, "@", System.Environment.NewLine & "@")

如果您在说完15个字符后需要它(在每15个字符后插入System.Environment.NewLine代码),你可以做类似的事情。

答案 4 :(得分:0)

我们可以动态更改宽度。请按照以下步骤进行操作

第1步:再添加一列

第二步:将添加的列与原始列合并

第3步:根据您的要求为额外列添加列可见性表达式

仍然没有得到,然后看到附图

答案 5 :(得分:0)

这可能不是您要寻找的答案,但是不得不一次调整100多个列的宽度并不是一件很有趣的事情,这种小技巧确实可以节省时间。

  1. 通过“报告向导”创建报告,然后在报告中添加所有需要的列。这样做创建了Tablix!您可以一次选择所有列,因此可以节省大量时间。
  2. 接下来,右键单击“解决方案资源管理器”>“报告”部分下的.rdl文件
  3. 选择“ <>查看代码”
  4. 在xml标记中查找1。默认情况下,宽度为1英寸。您可以将所有列的1in替换为2in!
  5. 最后,运行报告,查看是否需要对不适合2英寸概念的任何列进行任何调整。

尝试此方法。如果您发现任何更好的东西或改进的地方,请告诉我!

答案 6 :(得分:-8)

更改列宽

在“设计”视图中,单击Tablix数据区域中的任意位置以选择它。灰色列句柄出现在Tablix数据区域的外边框上。

将鼠标悬停在要展开的列句柄边缘上。出现一个双头箭头。 单击以抓住列的边缘并向左或向右移动以调整列宽。

检查下图:(由于低点,我无法在此处发布图片) http://i.stack.imgur.com/FvCQF.jpg

参考:http://technet.microsoft.com/en-us/library/cc645971(v=sql.100).aspx