使用DevExpress的Grid自动打印,导出

我们在写项目的时候,总会遇到一些数据的打印和导出,开始在想得时候真的很困难,但是最后还是解决了,所有分享一下,以后对自己有用
/// <summary>
/// 打印信息
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void barButtonItem4_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
//指定应用于单页单页设置
PageSettings set_print_page = new PageSettings();
//自动打印
DynamicPrintHelper ph = new DynamicPrintHelper();
if (ph.IsPrintingAvailable)
{
//设置自动打印属性
ph.PageSettings = set_print_page;
ph.PageSettings.Landscape = true;
//打印gridview页面
ph.ShowPreview(this.gridControl1, true);
}
/// <summary>
/// 实现导出功能
/// </summary>
/// <param name="bv"></param>
/// <param name="provider"></param>
public static void ExportTo(BaseView bv,IExportProvider provider)
{
//用于绘制鼠标指针图像
Cursor currentCursor = Cursor.Current;
Cursor.Current = Cursors.WaitCursor;
BaseExportLink link = bv.CreateExportLink(provider);
link.ExportTo(true);
Cursor.Current = currentCursor;
}

/// <summary>
/// 设置弹出一个保存文件对话框
/// </summary>
/// <param name="title"></param>
/// <param name="filter"></param>
/// <returns></returns>
public static string ShowSaveFileDialog(string title, string filter)
{
//打开文件对话框
SaveFileDialog dlg = new SaveFileDialog();
//默认的文件名
string name = "导出文件";
//设置标题栏
dlg.Title = "导出到 " + title;
//设置默认文件名
dlg.FileName = name;
dlg.Filter = filter;
if (dlg.ShowDialog() == DialogResult.OK)
{
//返回文件名
return dlg.FileName;

}
return "";

}
/// <summary>
/// 导出到excel的事件方法
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void barButtonItem5_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
try
{
//打开导出文件保存对话款
string fileName = ShowSaveFileDialog("Microsoft Excel Document", "Microsoft Excel|*.xls");
//文件不为空
if (fileName != "")
{
//调用导出方法
ExportTo(gridView1, new ExportXlsProvider(fileName));
}
}
catch (Exception ex)
{
//捕捉异常
MessageBox.Show(ex.Message.ToString());
return;
}

}

导出的时候还可以用下面的方法,会更加的方便和简洁
/// <summary>
/// 导出到excel的事件方法
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void barButtonItem导出_ItemClick(object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
//保存对话框
SaveFileDialog sfd = new SaveFileDialog();
//默认的文件名
string name = "假劣药信息";
//设置默认文件名
sfd.FileName = name;
//设置标题栏
sfd.Title = "导出文件到" + name+"文件中";
//设置导出的文件格式
sfd.Filter = "XLS|*.XLS";
//弹出保存对话框
sfd.ShowDialog();
//如果文件名不为空
if (sfd.FileName != null)
{
//导出该文件
this.gridControl信息显示.ExportToXls(sfd.FileName);
}

}
catch (Exception es)
{
MessageBox.Show(es.Message);
return;
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值