在DatePicker中标识输入的日期(太阳能或公历)

时间:2019-11-28 13:27:13

标签: c# wpf datetime datepicker

嗨,有没有办法确定日期? (太阳能或公历) 我已经写了一个波斯DatePicker控件。一切正常,直到我用xaml正确输入日期,然后在运行程序时会有不同的日期

例如,我在xaml中写下以下日期

<PersianDatePicker SelectedDate="1398/10/10"/>

运行程序时看到以下日期 0776/10/16

但是如果我在公元(2019/11/28)中输入日期,则在运行程序时会看到它的日期(1398/09/07它可以正确显示)

那么,有什么办法让我识别输入的日期,或者是阳历还是公历,并进行相应的更改?

这是所需的功能

private string DateTimeToString(DateTime d)
{
      CultureInfo cultureInfo = DateTimeHelper.GetCulture(this);
      DateTimeFormatInfo dtfi = DateTimeHelper.GetDateFormat(cultureInfo);
      System.Globalization.PersianCalendar pc = new System.Globalization.PersianCalendar();

      switch (SelectedDateFormat)
      {
          case DatePickerFormat.Short:
          {
               return string.Format("{0:00}/{1:00}/{2:00}", pc.GetYear(d) % 100, pc.GetMonth(d), pc.GetDayOfMonth(d));
          }
          case DatePickerFormat.Long:
          {
               return string.Format("{0:0000}/{1:00}/{2:00}", pc.GetYear(d), pc.GetMonth(d), pc.GetDayOfMonth(d));
          }
       }

       return null;
}

0 个答案:

没有答案