如何根据从tablix的每一行获取的值设置文本框?

时间:2015-10-29 10:52:57

标签: reporting-services rdlc rdl

如果Datasource有这样的4行

 ___Item_____
     AA
     BB
     CC
     DD

如果我制作10个文本框 我需要在文本框中输入4个值(AA,BB,CC和DD)。 如果某个文本框不是值,它将显示(***) 如下。

enter image description here

第一行放到第一个文本框。

第二行放到第二个文本框。

第3行放到第三个文本框。

第4行放到第四个文本框。

和其他put(***)因为Datasource只有4行。

我的意思是我需要显示自由布局。我不是指横向Tablix。 enter image description here

1 个答案:

答案 0 :(得分:1)

由于您希望在固定数量的文本框中显示数据,而您的数据集只有一列,因此您不应该真正尝试动态填充报表。您可以简单地格式化数据并将其作为参数列表传递给报告,而不是使用未定义的数据源。

ReportParameter[] reportParameters = new ReportParameter[10];
for (int i = 0; i < reportParameters.Length; i++)
{
   reportParameters[i] = new ReportParameter(string.Format("pParam{0}", i),
        (i < myDataSource.Count) ? myDataSource[i] : "***");
}

myViewer.LocalReport.SetParameters(reportParameters);

然后只需确保为您要显示的参数定义了参数(例如pParam0,pParam1,...,pParam9),并将其添加到所需的文本框中。