我正在使用WPF生成Crystal Report查看器,并且我能够在报表查看器中加载数据。但是当我试图创建一个事件来动态刷新报表时,数据无法刷新。Crystal报表无法刷新数据
基本上我做的是创造与MSSQL服务器
然后生成一个水晶报表文件连接数据集:
然后尝试将数据导入到在主窗口的Crystal报表查看器。 下面是代码:
public partial class MainWindow: Window
{
DataSet1TableAdapters.BordierSheetTableAdapter TA = new DataSet1TableAdapters.BordierSheetTableAdapter();
ReportDocument reportDoc = new ReportDocument();
public MainWindow()
{
InitializeComponent();
Data_Binding();
}
public void button2_Click(object sender, RoutedEventArgs e)
{
reportDoc.Refresh();
crystalReportsViewer1.ViewerCore.RefreshReport();
}
void Data_Binding()
{
DataSet empDataSet = new DataSet();
using (SqlConnection conn = new SqlConnection())
{
conn.ConnectionString = "Data Source=YATONGHOU\\SQLEXPRESS;Initial Catalog=messagedb;Integrated Security=True";
conn.Open();
string sqlStr = "select * from BordierSheet";
SqlDataAdapter dataAdapter = new SqlDataAdapter(sqlStr,conn);
dataAdapter.Fill(empDataSet, "BordierSheet");
}
string reportDataSource = @"C:\\Users\\yatong\\Work\\LogAnalytics\\BordierSheetReport\\BordierSheetReport\\CrystalReport1.rpt";
reportDoc.Load(reportDataSource);
reportDoc.SetDataSource(empDataSet);
this.crystalReportsViewer1.ViewerCore.ReportSource = reportDoc;
}
}
当我更新我的数据的基础上,然后单击窗口()这触发button2_Click(对象发件人,RoutedEventArgsË功能)的按钮,没有数据已被更新。 那么有人可以帮助我吗? 非常感谢。
刷新报告的代码在哪里?什么不行? – LittleBobbyTables 2012-07-26 19:55:43
它在函数button2_Click(object sender,RoutedEventArgs e)中。 Refresh方法不起作用。 – Lillian 2012-07-26 19:59:45
它会抛出错误还是根本不刷新?您是否在刷新报告之前尝试调用Data_Binding? – LittleBobbyTables 2012-07-26 20:02:44