65.9K
CodeProject 正在变化。 阅读更多。
Home

ExtendedDataTable

starIconstarIconstarIcon
emptyStarIcon
starIcon
emptyStarIcon

3.82/5 (9投票s)

2008年1月19日

Ms-PL

2分钟阅读

viewsIcon

32091

downloadIcon

838

ExtendedDataTable 是一个组件,它提供了比原生 .NET Framework DataTable 更多的功能。它也是平台无关的,您可以将其用于 Web 或 Windows 应用程序。

引言

ExtendedDataTable 是一个组件,它提供了比原生 .NET Framework DataTable 更多的功能。它也是平台无关的,您可以将其用于 Web 或 Windows 应用程序。它由 .NET Framework 2.0 和 .NET Framework 3.5 开发,您可以在此页面下载两个版本。让我们看看 ExtendedDataTable 提供了哪些功能。

背景

开发人员编写代码将数据导出到 Word、Excel、HTML 等外部文件类型,这总是需要时间的。开发人员还花时间进行一些操作,例如打印报告、发送邮件。这是一个节省时间的组件,使开发人员能够快速使用这些功能。

Using the Code

方法

  • ToWord:将数据导出为客户端计算机上的 Word 文档中的表格对象
  • ToExcel:将数据导出为客户端计算机上的 Excel 工作表
  • ToHtml:使用表示数据的 tabletrtd 标签生成 HTML 代码
  • SendMail:允许用户将表示数据的 HTML 表格作为电子邮件发送
  • Print:将数据打印到任何打印机
  • Fill:使用其包含的 DataAdapter 组件轻松地将数据库中的数据填充到表中
  • Update:允许用户使用其包含的 DataAdapter 组件轻松地将数据更新到数据库

属性

  • StyleProperties:您可以轻松修改将生成的表格的样式,例如表格样式、行样式、标题样式、交替行样式、特定行样式。
  • FormatProperties:此属性允许用户更改将生成的表格的格式,例如列标题、列对齐方式和列格式(数字、日期格式)。
  • PrintProperties:使用此属性,您可以轻松修改将打印的文档的布局或打印机的属性。
  • MailProperties:此属性用于更改 SMTP 服务器的设置。
  • DataProperties:此属性允许用户修改 ConnectionCommandDataAdapter 组件的设置,以填充或更新数据。

我将解释用于提供这些功能的技术

  • ToWord ToExcel 方法使用 Office Interop 来创建和填充文档。
  • ToHtml 是一个简单的方法,通过遍历行和列,使用 trtdtable 标签生成 HTML 代码。
  • SendMail 创建一个 MailMessage 对象,并通过 SmtpServer 发送生成的 HTML 代码。
  • Print 方法对于 Windows 和 Web 应用程序的工作方式不同
    • 对于 Windows 应用程序,它使用 Graphic 对象的 MeasureStringDrawRectangleFillRectangle DrawString 等方法来生成要打印的文档。
    • 对于 Web 应用程序,它将生成的 HTML 代码写入当前响应,并调用 javascript window.print 方法。
  • Fill Update 方法使用 dataadapter 将数据 selectinsert update 到数据库。

您可以在下载中提供的示例应用程序中找到有关如何使用此组件的信息。

ExtendedDataTable extendedDt = new ExtendedDataTable();
DataSet ds = new DataSet();
ds.ReadXml("SampleData.xml");
DataTable dt = ds.Tables[0];

extendedDt.ImportDataTable(dt);

extendedDt.FormatProperties.ColumnNames["FriendId"] = "Id";
extendedDt.FormatProperties.ColumnNames["FriendName"] = "Name";
extendedDt.FormatProperties.ColumnNames["FriendSurname"] = "Surname";
extendedDt.FormatProperties.ColumnNames["Gender"] = "Gender";
extendedDt.FormatProperties.ColumnNames["PlayedBy"] = "Played By";

//Export To Word
extendedDt.ToWord(@"C:\Friends.docx");

//Export To Excel
extendedDt.ToExcel(@"C:\Friends.xlsx");

//ToHtml
MessageBox.Show(extendedDt.ToHTML());

//SendMail
extendedDt.MailProperties.SmtpClient.Host = "localhost";
extendedDt.SendMail("oztamer@hotmail.com", "oztamer@hotmail.com", "Friends");

//Print
extendedDt.PrintProperties.PrintDocument.DefaultPageSettings.Landscape = true;
extendedDt.Print();

//Fill
extendedDt.DataProperties.Connection.ConnectionString = 
    "data source=.;initial catalog=dummy;integrated security=SSPI";
extendedDt.DataProperties.Command.CommandText = "SELECT * FROM Dummy";
extendedDt.Fill();

//Update
extendedDt.Update();

历史

  • 首次发布:2008年1月19日 V 1.0.0
    如有任何错误报告和建议,请随时通过 oztamer@hotmail.com 与我联系。
© . All rights reserved.