彩票走势图

日程管理控件Planner.NET FAQ之打印、导出和序列化

原创|其它|编辑:郝浩|2012-09-06 14:29:26.000|阅读 219 次

概述:Planner .NET是一款功能强大的时间管理工具,绝对是您工作上的好帮手。它提供了多种综合功能,这些功能可保证预约的时间设定以及任务安排在简单、综合的方式下完成。以下是Planner.NET控件有关打印、导出和序列化 方面的常见问题(FAQ)

# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>

Planner .NET是一款功能强大的时间管理工具,绝对是您工作上的好帮手。它提供了多种综合功能,这些功能可保证预约的时间设定以及任务安排在简单、综合的方式下完成。以下是Planner.NET控件有关打印、导出和序列化 方面的常见问题(FAQ):

Q:是否存在一个SaveToExcel的方法可以将日历导出到MS Excel中或者以逗号为分隔符的格式进行导出?

A:将日程表数据以逗号为分隔的文本导出到Excel会十分简单。

Q:在 Schedule类的 SaveTo 方法中如何保存我的私有属性?

A:为了保证自定义项目的序列化,你需要通过调用Schedule.RegisterItemClass. 注册你的项目类.重载 Appointment 类的 SaveTo 方法和 LoadFrom 方法并在方法类执行必要的自定义数据序列化和反序列化的操作.在重载的方法里调用基类的SaveTo和LoadFrom方法使Appointment类可对标准属性进行序列化和反序列化。关于具体如何操作,参看文档中的  。

Q:可以在Oracle或MSSQL数据库和Planner.NET之间进行数据绑定吗?

A:数据绑定只在支持.NET Framework 2.0的Planner.NET中可用。由于数据绑定是通过.NET数据集来执行的,因此它独立于数据库。然而,由于数据集具有无连接性质,因此需要用户来保证当数据集中的数据被转移到数据库中时表键也同时被写入。

Q:如何保存多个委托?

  1. 能否一次性保存多个委托?例如,我想在一个视图中保存20个不同的委托。
  2.  SaveToDataSource 方法允许将委托保存至数据库中吗?
  3. 可以举一个简单的例子说明如何使用VB.Net代码来完成上述的操作吗。

A:您可以使用 SaveTo 方法将日程表数据保存为硬盘上的一个文件,或者将其保存为一个二进制流或XML格式。调用此方法将会保存所有的日程表数据,包括委托、合同、任务、资源等.可通过 LoadFrom 方法将数据载回.下面的代码说明了如何将日程表数据保存为一个名为'd:\schedule.xml'的XML格式文件.该代码假设变量’calendar’引用了一个已存在的 Calendar 实例。

calendar.Schedule.SaveTo("d:\schedule.xml", MindFusion.Scheduling.ContentType.Xml)

正如您所想的,方法 SaveToDataSource 用来将日程表数据序列化至数据库中。为使用该方法,您需要在您的应用程序中增加一个数据源,然后将该数据源赋值给Calendar 控件的 DataSource 属性.您也需要将数据源中合适的数据成员赋值给Calendar中相应的数据成员属性。

Q:当日历处于单月视图时如何打印一个日期范围?

给定一个开始日期和终止日期,我希望能自动打印出所有的月份。现在我只能打印当前的月份。我可以创建一个例程来循环遍历一个给定的日期范围,将日历转换成每个月,然后调用 Calendar.Print 方法.唯一的问题是每当月份变化时,打印对话框都会弹出,打印方法都会被调用。

A:您可以使用void Print(PrintDocument doc) 的重载方法。它不会显示对话框而只是使用doc.PrinterSettings中指定的打印机。默认情况下它是系统默认的打印机,如果您愿意您也可以修改它。

Q:我需要以类似于 资源视图 的结构来打印一个报表。月份中的天数按行显示,合同或资源按列显示,每个单元格显示委托/项目。

A:使用 Calendar.Print 方法而不是 Report类,你将会在屏幕上看到打印出的资源视图。

Q:在 MonthRange视图 中,是否存在一种显示方式将星期一显示为每周的第一天,将星期天显示为每周的最后一天?

A:您可以使用 Calendar.Culture 属性指定每周的第一天为星期一,或者像下面的示例代码那样直接通过 Calendar.DateTimeFormat 属性设置每周的第一天:

Code:

calendar.BeginInit();
calendar.DateTimeFormat.FirstDayOfWeek = DayOfWeek.Monday;
calendar.EndInit();

您也可以通过属性网格在设计阶段执行这个改变。


标签:

本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn

文章转载自:慧都控件

为你推荐

  • 推荐视频
  • 推荐活动
  • 推荐产品
  • 推荐文章
  • 慧都慧问
扫码咨询


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP