彩票走势图

如何在 FastReport中创建波斯历?

翻译|使用教程|编辑:杨鹏连|2021-06-07 09:30:14.350|阅读 162 次

概述:你知道不同的国家有不同的日期格式吗?当您制作多语言报告或针对他们说波斯语(波斯语)的国家/地区进行报告时,以正确的格式显示日期很重要。

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

FastReport .Net是适用于Windows Forms,ASP.NET,MVC和.NET Core的全功能解决方案。它可以在Microsoft Visual Studio 2005-2019中使用。支持.Net Framework 2.0-4.x,.NET Core 3.0及以上版本。

在FastReport .NET 2021.3的新版本在演示应用程序中实现了HiDPI支持。添加了用于嵌入Blazor Server应用程序的Razor组件。XODT和XODS有新的出口。FastReport OpenSource版本现在可以导入DevExpress,List和Label以及SQL Server Reporting Services报表。(点击下方按钮下载)

立即点击下载FastReport.NET v2021.3最新版

Fastreport.NET在线购买价优惠,专享85折起!赶紧加入购物清单吧!

你知道不同的国家有不同的日期格式吗?当您制作多语言报告或针对他们说波斯语(波斯语)的国家/地区进行报告时,以正确的格式显示日期很重要。默认情况下,FastReport 使用欧洲日期格式,但 .NET 工具允许将其转换为不同的格式。

因此,我们的任务是将日期转换为波斯格式。例如,我们的报告有一个表达式 [Date],表示今天的日期:

[日期]

表达式[Date]以DateTime格式获取当前系统日期,但所有处理后的文本报告的值是String。让我们在报告脚本中创建一个新函数:

private void ConvertToPersianDate(object sender, EventArgs e)
我们将从文本对象中唤起这个功能。我们创建一个临时变量,它将对象的文本转换为 DateTime:
DateTime d = DateTime.Parse((sender as TextObject).Text);
“sender as TextObject”是调用函数的对象的地址。如果我们以这种方式处理它,我们就可以使用它的功能和属性。

之后,我们将需要 PersianCalendar 对象,它将日期转换为波斯语格式:

PersianCalendar pc =  new PersianCalendar ( ) ;
请注意,此对象存储在 System.Globalization 库中,并且必须在“使用”部分中指明。

然后我们必须更改对象的文本。更详细地考虑这一行:

(sender as TextObject).Text = string.Format("{0}/{1}/{2}", pc.GetYear(d), pc.GetMonth(d), pc.GetDayOfMonth(d));
在这里我们设置对象的文本。该值的格式为年/月/日,因为我们使用 PersianCalendar 的函数来获取相应的值。可以根据需要编辑设置文本的代码部分。例如,day.month.year 格式的日期代码如下所示:

"{0}.{1}.{2}", pc.GetDayOfMonth(d), pc.GetMonth(d), pc.GetYear(d)
结果,我们得到以下函数:
using System.Globalization;
namespace FastReport
{
 public class ReportScript
 {
 private void ConvertToPersianDate(object sender, EventArgs e)
 {
 // Converting to DateTime format
 DateTime d = DateTime.Parse((sender as TextObject).Text);
 
 // Creating an object for conversion
 PersianCalendar pc = new PersianCalendar();
 
 // Creating a string using PersianCalendar
 // It is possible to change the string template
 (sender as TextObject).Text = string.Format("{0}/{1}/{2}", pc.GetYear(d), pc.GetMonth(d), pc.GetDayOfMonth(d));
 }
 }
}
将该函数添加到相关对象的 AfterData 事件中。

后数据

现在日期看起来像这样:

最后结果

其他与时间相关的功能可以参考下表:

 GetDayOfWeek(), Day of week
 GetMonth(), Month
 GetDayOfMonth(), Day of month
 GetYear(), Year
 GetHour() Hour
 GetMinute() Minute
 GetSecond() Second

现在您知道如何更改报告中的日期格式了。本文可能有助于将格式更改为(年、月、日)。这种格式在日本、中国、朝鲜、韩国、台湾、匈牙利、立陶宛和伊朗使用;此外,它在一些欧洲和亚洲国家被用作抵押品。

如果您对FastReport感兴趣,欢迎加入FastReport QQ交流群:801349317

还想要更多吗?可以您点击阅读【FastReport的报表2020最新资源盘点】查找需要的教程资源。让人兴奋的是FastReport的.NET正在慧都网火热销售中!低至3701元型态起!> >查看价格详情


标签:

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

文章转载自:

为你推荐

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


添加微信 立即咨询

电话咨询

客服热线
023-68661681

TOP