منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : ونحن مقبلون على شهر رمضان أطلب كود لتصحيح التاريخ الهجري في حال زيادة أو نقصان يوم
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم ورحمة الله و بركاته
هذا كود لجلب التاريخ الهجري ونحن مقبلون على شهر رمضان
أطلب كود لتصحيح التاريخ الهجري في حال زيادة أو نقصان يوم
وبارك الله فيكم

Imports System.Globalization.HijriCalendar
Public Class Form1
Dim HijriDTF As System.Globalization.DateTimeFormatInfo = New System.Globalization.CultureInfo("ar-DZ", False).DateTimeFormat
Private Sub Timer2_Tick(sender As Object, e As EventArgs) Handles Timer2.Tick
HijriDTF.Calendar = New System.Globalization.HijriCalendar
HijriDTF.ShortDatePattern = "ddd dd MMMM yyyy"
Label1.Text = DateTime.Now. ToString("d", HijriDTF) & " هـ"

End Sub

End Class
كود :
    Public Function CalHijri(gDate As Object, Optional StrFormat As String = "yyyy/MM/dd")
        Dim mDT As New DateTime(FormatDate(gDate, "yyyy"), FormatDate(gDate, "MM"), FormatDate(gDate, "dd"), New Globalization.GregorianCalendar())
        Dim mCal As New Globalization.HijriCalendar()
        Return FormatDate(New DateTime(mCal.GetYear(mDT), mCal.GetMonth(mDT), mCal.GetDayOfMonth(mDT)), StrFormat)

    End Function

    Public Function FormatDate(ByVal DT As Object, Optional StrFormat As String = "yyyy/MM/dd")
        FormatDate = Nothing
        Select Case Type.GetTypeCode(DT.GetType())
            Case TypeCode.DateTime
                Return Format(DT, StrFormat)' CDate(DT.ToString("yyyy'/'MM'/'dd")
            Case TypeCode.String, TypeCode.Object
                Return Format(CDate(DT), StrFormat)
            Case Else
                MessageBox.Show("هنــــاك خطأ")
        End Select
    End Function