CSFrameworkV6旗舰版 - 导入导出Excel文件数据开发教程
CSFrameworkV6旗舰版 - 导入导出Excel文件数据开发教程
目录
初始化按钮
重写 InitButtons 方法,增加【导出模版文件】【导入模版数据】两个按钮。
C# 全选
/// <summary>
/// 初始化界面按钮
/// </summary>
public override void InitButtons()
{
base.InitButtons();
if (this.ButtonAuthorized(ButtonAuthority.ADD))
{
var btnExportFile = this.ToolbarRegister.CreateButton(ButtonNameList.btnExportFile,
LanLib.Get("导出模版文件"), ToolBarGroup.数据操作, Globals.LoadBitmap("32_excel_template.png"), new Size(57, 28), false, true,
DoExportTemplate);
var btnImportFile = this.ToolbarRegister.CreateButton(ButtonNameList.btnImportFile,
LanLib.Get("导入模版数据"), ToolBarGroup.数据操作, Globals.LoadBitmap("32_excel_import.png"), new Size(57, 28), false, true,
DoImportExcelData);
//添加子按钮
var btnOwner = _buttons.GetButtonByName(ButtonNameList.btnExportDataDict);//父级按钮:导入/导出按钮
btnOwner.AddSubButton(btnExportFile);
btnOwner.AddSubButton(btnImportFile);
}
}
导出模板文件按钮事件:DoExportTemplate
方式1:直接另存为模板文件(不含数据)
该方式用于直接导入Excel内所有数据。
C# 全选
public virtual void DoExportTemplate(IButtonInfo sender)
{
var file = Path.Combine(Globals.ApplicationPath, @"excel_templates\语言资料模板.xlsx");
if (File.Exists(file))
{
SaveFileDialog dlg = new SaveFileDialog();
dlg.Filter = "Excel文件|*.xlsx";
dlg.FileName = DateTime.Today.ToString("yyyyMMdd") + " - 语言资料模板.xlsx";
if (dlg.ShowDialog() == DialogResult.OK)
{
File.Copy(file, dlg.FileName, true);
if (File.Exists(dlg.FileName))
Msg.ShowInformation("导出模版文件成功!");
else
Msg.Warning("导出失败!");
}
}
else
{
Msg.Warning("模版文件丢失(语言资料模板.xlsx),请联系管理员!");
}
}
方式2:导出模板文件(包含数据)
该方式用于提供参考数据给用户填写Excel文件内容。比如本文案例导出【中文简体】的语言内容作为参考数据,用户对照翻译为【英文】作为目标语言数据。
代码参考:frmLanguageData的 DoExportTemplate 方法。
导入模版数据按钮事件:DoImportExcelData
C# 全选
public virtual void DoImportExcelData(IButtonInfo sender)
{
IImporterSource source = new ImporterDataSource_Excel_NPOI(typeof(ImportLanguageData_ExcelModel));
IImporterTarget target = new ImportLanguageDataFromExcel();
var count = frmImportExcel.ExecuteImporter(source, target);
if (count > 0)
{
btnQuery.PerformClick();//刷新数据
}
}
完整版源码
开发框架版本:CSFrameworkV6.1
文本源码位置:frmLanguageData.cs
截图参考
功能按钮
导入数据
版权声明:本文为开发框架文库发布内容,转载请附上原文出处连接
NewDoc C/S框架网