在rdlc报告中动态隐藏列

时间:2011-06-22 10:01:28

标签: c# asp.net-mvc-2 rdlc

我们如何在MVC 2中的rdlc报告中动态隐藏列?

是否可以使用外部参数?我们如何以编程方式控制rdlc报告中列的可见性?

3 个答案:

答案 0 :(得分:24)

您不想使用Hidden属性,实际上您想要选择列,右键单击并选择Column Visibility。进入此处后,您可以使用表达式根据参数设置可见性,如下所示:

= iif(Parameters!column_visible.Value = 1, false, true)

Hidden在这个实例中不起作用,因为实际上并没有将它应用于像您选择文本框之类的对象一样。

答案 1 :(得分:13)

以下是隐藏列的步骤

1)在报告中添加名为column_visible的布尔参数

2)右键单击所需的列,然后选择“列可见性”。

3)根据表达式"

选择选项"显示或隐藏

4)添加以下公式

= iif(Parameters!column_visible.Value = "True", false,true)

5)在c#文件中添加以下代码,在其中为上面添加的参数

指定值
ReportParameter[] parameters = new ReportParameter[1];
if (condition)
{
   parameters[0] = new ReportParameter("column_visible", "True");
}
else
{
 parameters[0] = new ReportParameter("column_visible", "False");
}          
this.reportViewer1.LocalReport.SetParameters(parameters);

答案 2 :(得分:0)

选择一列。在属性中,您有Hidden。属性。然后,您可以设置条件,例如=Parameters!IsColumnHidden.Value

如果您想从C#代码执行此操作,我会向报告发送一个参数(如上所述),说明是否应该隐藏列。