cs2010+sql2008,创建动态水晶报表,打印和导出按钮失效
看了论坛里的相关帖子以及博客内容,是说页面刷新后没有报表文件的缘故,说是把代码放到Page_Load的 if (!Page.IsPostBack){}后面就可以解决,现在我的问题是,我的报表查询是在按钮事件里的,不知道该怎么解决了,请各位帮我看一看。C#代码如下:namespace WebApplication3
{
public partial class _Default : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
//CrystalReportViewer1.Visible = false;
if (!Page.IsPostBack)
{
this.Page.ClientScript.RegisterStartupScript(this.GetType(), "", "<script>alert ('欢迎')</script>");
}
}
protected void CrystalReportViewer1_Init(object sender, EventArgs e)
{
}
private void ConfigureCrystalReports()
{
string reportPath = Server.MapPath("CrystalReport1.rpt");
ConnectionInfo connectionInfo = new ConnectionInfo();
connectionInfo.ServerName = "13-PC";
connectionInfo.DatabaseName = "db_PMS";
connectionInfo.UserID = "sa";
connectionInfo.Password = "1234";
CrystalReportViewer1.ReportSource = reportPath;
//SetDBLogonForReport(connectionInfo);
}
//全部显示
protected void Button2_Click(object sender, EventArgs e)
{
//将数据库中的信息绑定到报表中
ReportDocument optDoc = new ReportDocument();
optDoc.Load(Server.MapPath("~\\CrystalReport1.rpt"));
optDoc.SetDataSource(CommonCodes.GetCheckData());
CrystalReportViewer1.ReportSource = optDoc;
CrystalReportViewer1.Visible = true;
}
public string empName { get; set; }
// 按条件筛选
protected void Button1_Click(object sender, EventArgs e)
{
Boolean flag = true;// 定义一个布尔型变量 flag
if (txtName.Text.Trim() == "")
{
this.Page.ClientScript.RegisterStartupScript(this.GetType(), "", "<script>alert ('输入名字')</script>");
txtName.Focus();
}
else
{
DataTable dataTable = CommonCodes.GetCheckData();
for (int index = 0; index < dataTable.Rows.Count; index++)
{
if ((string)dataTable.Rows[index]["employeeName"] == this.txtName.Text.Trim())
{
ReportDocument optDoc = new ReportDocument();
optDoc.Load(Server.MapPath("~\\CrystalReport1.rpt"));
optDoc.SetDataSource(CommonCodes.GetCheckData(this.txtName.Text.Trim()));
CrystalReportViewer1.ReportSource = optDoc;
CrystalReportViewer1.Visible = true;
flag = true;
break;
}
}
if (flag == false)
{
this.Page.ClientScript.RegisterStartupScript(this.GetType(), "", "<script>alert ('输入名字错误')</script>");
}
}
}
}
}
全部显示和查询按钮功能可以使用,如下图,但是无法打印、导出按钮失效,点击不起作用,
请帮我看看吧
水晶报表 打印 --------------------编程问答-------------------- 没人顶么,自己顶
补充:.NET技术 , ASP.NET