ReportViewer通过在c#中动态添加数据源仅显示标题

时间:2015-03-06 06:59:40

标签: c# reportviewer

我通过点击First Form中的按钮,使用Report Viewer(在Second Form中)创建报告。我从第一个表单发送SELECT查询数据。 在第二个form_Loaded中,我通过从数据库中读取数据来显示报告。

namespace TrainingReports
{
    public partial class AlarmReport : Form
    {
        private String Sessionstr;
        public AlarmReport(String strsess)
        {
            InitializeComponent();
            Sessionstr = strsess;
        }

        private void AlarmReport_Load(object sender, EventArgs e)
        {
             this.reportViewer1.Reset();
             this.reportViewer1.Visible = true;
             this.reportViewer1.ProcessingMode = ProcessingMode.Local;             
             this.reportViewer1.LocalReport.ReportEmbeddedResource = "TrainingReports.AlarmLog.rdlc";
             this.reportViewer1.LocalReport.DataSources.Clear();

             String sQuery = "SELECT * FROM alarmlogtbl WHERE (SessionID='" + Sessionstr + "')";
             MySqlDataAdapter ada = new MySqlDataAdapter(sQuery, Properties.Settings.Default.DBPerfScoreConnectionString);
             DataSet ds = new DataSet();
             ada.Fill(ds);

             ReportDataSource reportDataSource = new ReportDataSource();             
             reportDataSource.Name = "DBPerfScoreDataSet_alarmlogtbl";
             reportDataSource.Value = ds.Tables[0];

             this.reportViewer1.LocalReport.DataSources.Add(reportDataSource);                      
             this.reportViewer1.RefreshReport();

        }
    }
}

从MainForm,我通过按钮操作调用报表表单:

private void OnButtonAlarmActionClick(object sender, ListViewColumnMouseEventArgs e)
        {
            ListViewHitTestInfo info = SessionList.HitTest(e.X, e.Y);
            ListViewItem item = info.Item;
            String sSession = item.SubItems[1].Text;// Index; 
            AlarmReport alrmRpt = new AlarmReport(sSession);           
            alrmRpt.Show();           

        }

生成报告,但只有标题显示没有表数据。

我已将Microsoft.ReportViewer附加到第二表格中,并已选择“设计新报告”#39;并在其中添加了DataSource和AlamrmLogtbl以及所有comluns.Now在ReportViewer Tasks菜单中,选择报告显示TrainingReports.AlarmLog.rdlc"。 从数据库获取的数据没有显示出来。

已解决:选择查询时出现问题。

0 个答案:

没有答案