Click here to Skip to main content
15,886,519 members
Articles / Desktop Programming / Windows Forms

Farsi Library - Working with Dates, Calendars, and DatePickers

Rate me:
Please Sign up or sign in to vote.
4.93/5 (236 votes)
21 Nov 2007MIT8 min read 2.9M   95.1K   202  
A library to work with "Persian Calendar", "Hijri Calendar", and "Gregorian Calendar" with WinForms GUI controls designed for Persian (Farsi) or Arabic language applications in mind, but usable in any Windows application that makes use of calendars and dates.
<?xml version="1.0" encoding="utf-8"?>
<root>
  <!-- 
    Microsoft ResX Schema 
    
    Version 1.3
    
    The primary goals of this format is to allow a simple XML format 
    that is mostly human readable. The generation and parsing of the 
    various data types are done through the TypeConverter classes 
    associated with the data types.
    
    Example:
    
    ... ado.net/XML headers & schema ...
    <resheader name="resmimetype">text/microsoft-resx</resheader>
    <resheader name="version">1.3</resheader>
    <resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
    <resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
    <data name="Name1">this is my long string</data>
    <data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
    <data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
        [base64 mime encoded serialized .NET Framework object]
    </data>
    <data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
        [base64 mime encoded string representing a byte array form of the .NET Framework object]
    </data>
                
    There are any number of "resheader" rows that contain simple 
    name/value pairs.
    
    Each data row contains a name, and value. The row also contains a 
    type or mimetype. Type corresponds to a .NET class that support 
    text/value conversion through the TypeConverter architecture. 
    Classes that don't support this are serialized and stored with the 
    mimetype set.
    
    The mimetype is used forserialized objects, and tells the 
    ResXResourceReader how to depersist the object. This is currently not 
    extensible. For a given mimetype the value must be set accordingly:
    
    Note - application/x-microsoft.net.object.binary.base64 is the format 
    that the ResXResourceWriter will generate, however the reader can 
    read any of the formats listed below.
    
    mimetype: application/x-microsoft.net.object.binary.base64
    value   : The object must be serialized with 
            : System.Serialization.Formatters.Binary.BinaryFormatter
            : and then encoded with base64 encoding.
    
    mimetype: application/x-microsoft.net.object.soap.base64
    value   : The object must be serialized with 
            : System.Runtime.Serialization.Formatters.Soap.SoapFormatter
            : and then encoded with base64 encoding.

    mimetype: application/x-microsoft.net.object.bytearray.base64
    value   : The object must be serialized into a byte array 
            : using a System.ComponentModel.TypeConverter
            : and then encoded with base64 encoding.
    -->
  <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
    <xsd:element name="root" msdata:IsDataSet="true">
      <xsd:complexType>
        <xsd:choice maxOccurs="unbounded">
          <xsd:element name="data">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
                <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
              <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
              <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
            </xsd:complexType>
          </xsd:element>
          <xsd:element name="resheader">
            <xsd:complexType>
              <xsd:sequence>
                <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
              </xsd:sequence>
              <xsd:attribute name="name" type="xsd:string" use="required" />
            </xsd:complexType>
          </xsd:element>
        </xsd:choice>
      </xsd:complexType>
    </xsd:element>
  </xsd:schema>
  <resheader name="resmimetype">
    <value>text/microsoft-resx</value>
  </resheader>
  <resheader name="version">
    <value>1.3</value>
  </resheader>
  <resheader name="reader">
    <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <resheader name="writer">
    <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
  </resheader>
  <data name="lblMessage.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>False</value>
  </data>
  <data name="lblMessage.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>Private</value>
  </data>
  <data name="lblMessage.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>Private</value>
  </data>
  <data name="pbIcon.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>False</value>
  </data>
  <data name="pbIcon.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>Private</value>
  </data>
  <data name="pbIcon.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>Private</value>
  </data>
  <data name="chbSaveResponse.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>False</value>
  </data>
  <data name="chbSaveResponse.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>Private</value>
  </data>
  <data name="chbSaveResponse.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>Private</value>
  </data>
  <data name="imageListIcons.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>Private</value>
  </data>
  <data name="imageListIcons.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>Private</value>
  </data>
  <data name="imageListIcons.Location" type="System.Drawing.Point, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>17, 17</value>
  </data>
  <data name="imageListIcons.ImageStream" mimetype="application/x-microsoft.net.object.binary.base64">
    <value>
        AAEAAAD/////AQAAAAAAAAAMAgAAAFpTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0xLjAuNTAw
        MC4wLCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZT
        eXN0ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMA
        AADwDwAAAk1TRnQBSQFMAgEBBAEAAQkBAAEEAQABIAEAASABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQC
        AAEoAwABgAMAAWADAAEBAQABCAYAATAYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB
        3AHAAQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IB
        AAM5AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8B
        MwMAAWYDAAGZAwABzAIAATMDAAIzAgABMwFmAgABMwGZAgABMwHMAgABMwH/AgABZgMAAWYBMwIAAmYC
        AAFmAZkCAAFmAcwCAAFmAf8CAAGZAwABmQEzAgABmQFmAgACmQIAAZkBzAIAAZkB/wIAAcwDAAHMATMC
        AAHMAWYCAAHMAZkCAALMAgABzAH/AgAB/wFmAgAB/wGZAgAB/wHMAQABMwH/AgAB/wEAATMBAAEzAQAB
        ZgEAATMBAAGZAQABMwEAAcwBAAEzAQAB/wEAAf8BMwIAAzMBAAIzAWYBAAIzAZkBAAIzAcwBAAIzAf8B
        AAEzAWYCAAEzAWYBMwEAATMCZgEAATMBZgGZAQABMwFmAcwBAAEzAWYB/wEAATMBmQIAATMBmQEzAQAB
        MwGZAWYBAAEzApkBAAEzAZkBzAEAATMBmQH/AQABMwHMAgABMwHMATMBAAEzAcwBZgEAATMBzAGZAQAB
        MwLMAQABMwHMAf8BAAEzAf8BMwEAATMB/wFmAQABMwH/AZkBAAEzAf8BzAEAATMC/wEAAWYDAAFmAQAB
        MwEAAWYBAAFmAQABZgEAAZkBAAFmAQABzAEAAWYBAAH/AQABZgEzAgABZgIzAQABZgEzAWYBAAFmATMB
        mQEAAWYBMwHMAQABZgEzAf8BAAJmAgACZgEzAQADZgEAAmYBmQEAAmYBzAEAAWYBmQIAAWYBmQEzAQAB
        ZgGZAWYBAAFmApkBAAFmAZkBzAEAAWYBmQH/AQABZgHMAgABZgHMATMBAAFmAcwBmQEAAWYCzAEAAWYB
        zAH/AQABZgH/AgABZgH/ATMBAAFmAf8BmQEAAWYB/wHMAQABzAEAAf8BAAH/AQABzAEAApkCAAGZATMB
        mQEAAZkBAAGZAQABmQEAAcwBAAGZAwABmQIzAQABmQEAAWYBAAGZATMBzAEAAZkBAAH/AQABmQFmAgAB
        mQFmATMBAAGZATMBZgEAAZkBZgGZAQABmQFmAcwBAAGZATMB/wEAApkBMwEAApkBZgEAA5kBAAKZAcwB
        AAKZAf8BAAGZAcwCAAGZAcwBMwEAAWYBzAFmAQABmQHMAZkBAAGZAswBAAGZAcwB/wEAAZkB/wIAAZkB
        /wEzAQABmQHMAWYBAAGZAf8BmQEAAZkB/wHMAQABmQL/AQABzAMAAZkBAAEzAQABzAEAAWYBAAHMAQAB
        mQEAAcwBAAHMAQABmQEzAgABzAIzAQABzAEzAWYBAAHMATMBmQEAAcwBMwHMAQABzAEzAf8BAAHMAWYC
        AAHMAWYBMwEAAZkCZgEAAcwBZgGZAQABzAFmAcwBAAGZAWYB/wEAAcwBmQIAAcwBmQEzAQABzAGZAWYB
        AAHMApkBAAHMAZkBzAEAAcwBmQH/AQACzAIAAswBMwEAAswBZgEAAswBmQEAA8wBAALMAf8BAAHMAf8C
        AAHMAf8BMwEAAZkB/wFmAQABzAH/AZkBAAHMAf8BzAEAAcwC/wEAAcwBAAEzAQAB/wEAAWYBAAH/AQAB
        mQEAAcwBMwIAAf8CMwEAAf8BMwFmAQAB/wEzAZkBAAH/ATMBzAEAAf8BMwH/AQAB/wFmAgAB/wFmATMB
        AAHMAmYBAAH/AWYBmQEAAf8BZgHMAQABzAFmAf8BAAH/AZkCAAH/AZkBMwEAAf8BmQFmAQAB/wKZAQAB
        /wGZAcwBAAH/AZkB/wEAAf8BzAIAAf8BzAEzAQAB/wHMAWYBAAH/AcwBmQEAAf8CzAEAAf8BzAH/AQAC
        /wEzAQABzAH/AWYBAAL/AZkBAAL/AcwBAAJmAf8BAAFmAf8BZgEAAWYC/wEAAf8CZgEAAf8BZgH/AQAC
        /wFmAQABIQEAAaUBAANfAQADdwEAA4YBAAOWAQADywEAA7IBAAPXAQAD3QEAA+MBAAPqAQAD8QEAA/gB
        AAHwAfsB/wEAAaQCoAEAA4ADAAH/AgAB/wMAAv8BAAH/AwAB/wEAAf8BAAL/AgAD//8A/wD/AP8A/wD/
        AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wD/AP8A/wAmABnsFQAC
        7BgACOweAALsDwAb7BMAA+wVAA7sGgAD7A0AAQMYAAXsEwAC7BQAAuwIAQbsGgAC7AwAAQMY+wEHAQAE
        7BEAAf8BAALsEgAB7AMBCPkDAQXsFgAB/wEAAuwLAAEDGvsBBwEAA+wQAAL/AQAC7BEAAewBAQ75AQEF
        7BQAAv8BAALsCwABAxv7AQAD7A0AAewBAAP/AQAC7BAAAgEQ+QIBBOwQAAHsAQAD/wEAAuwLAAEDDPsB
        BwIAAQcL+wEAAuwLAATsAQAD/wEABewMAAEBFPkBAQPsDQAE7AEAA/8BAAXsCAABAwz7BAAK+wEHAQAC
        7AkAA+wDAAEHA/8BAAfsCQABARb5AQED7AoAA+wDAAEHA/8BAAfsBwABAwv7BAAK+wEAAuwJAAHsAwAB
        Bwb/AQcDAAXsCAABARb5AQEE7AgAAewDAAEHBv8BBwMABewGAAEDC/sBBwIAAQcJ+wEHAQAC7AoAAQcM
        /wEHAgAE7AYAAQEG+QH/CvkB/wb5AQED7AkAAQcM/wEHAgAE7AYAAQMX+wEAAuwJAAEHEP8BBwEABOwE
        AAEBBvkD/wj5A/8G+QEBAuwHAAEHEP8BBwEABOwFAAEDC/sBAAr7AQcBAALsCAAU/wEABOwDAAEBBfkF
        /wb5Bf8F+QEBA+wFABT/AQAE7AUAAQMJ+wEHAQABBwn7AQAC7AgACf8BBwL8AQcJ/wEABOwCAAEBBvkF
        /wT5Bf8G+QEBA+wEABb/AQAE7AQAAQMJ+wEDAQABAwj7AQcBAALsBgAB7Ar/BPwK/wEAA+wBAAEBCPkF
        /wL5Bf8I+QEBAuwCAAHsCP8J/Af/AQAD7AUAAQMI+wMACPsBAALsBgAB7AEHCv8E/Ar/AQcBAAPsAQEJ
        +Qr/CfkBAQLsAQAB7AEHCv8F/An/AQcBAAPsBAABAwf7AQcDAAEHBvsBBwEAAuwGAAHsC/8BBwL8AQcL
        /wEAA+wBAQr5CP8K+QEBAuwBAAHsC/8F/Ar/AQAD7AUAAQMG+wEDAwABAwb7AQAC7AYAAewBBxr/AQcB
        AALsAQEL+Qb/C/kBAQPsAQcL/wX8Cv8BBwEAAuwFAAEDBvsFAAX7AQcBAALsBgAB7A3/AvwN/wEAAuwB
        AQv5Bv8L+QEBA+wM/wX8C/8BAALsBgABAwX7BQAF+wEAAuwHAAHsDf8C/AEHDP8BAALsAQEK+Qj/CvkB
        AQPsDP8F/Av/AQAC7AYAAQMF+wUABPsBBwEAAuwHAAHsDf8D/Az/AQAC7AEBCfkK/wn5AQEB7AEAAewM
        /wX8C/8BAALsBwABAwT7BQAE+wEAAuwIAAHsDf8BBwP8C/8BAALsAQEI+QX/AvkF/wj5AQEB7AEAAewM
        /wX8C/8BAALsBwABAwT7BQAD+wEHAQAC7AgAAewJ/wEHAvwBBwH/BPwK/wEAAewCAAEBBvkF/wT5Bf8G
        +QEBAuwBAAHsCv8H/Av/AQAB7AkAAQMD+wEHAwABBwP7AQAC7AkAAewBBwj/BPwB/wEHBPwI/wEHAQAB
        7AIAAQEF+QX/BvkF/wX5AQEB7AIAAewBBxr/AQcBAAHsCQABAwr7AQcBAALsCgAB7Aj/BPwC/wT8CP8B
        AAHsAwABAQb5A/8I+QP/BvkBAQQAAewa/wEAAewLAAEDCfsBAALsCwAB7AEHB/8C/AT/BPwH/wEHBgAB
        AQb5Af8K+QH/BvkBAQHsBAAB7AEHCf8BBwT8AQcJ/wEHDQABAwj7AQcBAALsDAAB7Af/AQcB/AEHAv8E
        /AEHB/8IAAEBFvkBAQHsBgAB7An/BvwJ/w8AAQMH+wEAAuwOAAHsB/8BBwb8AQcH/wkAAQEW+QEBCAAB
        7Aj/BvwI/xAAAQMG+wEHAQAC7A8AAewU/wsAAQEU+QEBCgAB7Af/AQcE/AEHB/8SAAEDBfsBAALsEQAB
        7AEHEP8BBwHsDAACARD5AgEMAAHsAQcQ/wEHAewSAAEDBPsBBwEAAewTAALsAQcM/wEHAuwPAAEBDvkB
        AQ8AAuwBBwz/AQcC7BQAAQMC+wEHGAAD7AEHBv8BBwPsEgADAQj5AwESAAPsAQcG/wEHA+wXAAMDGwAI
        7BgACAEYAAjsDQABQgFNAT4HAAE+AwABKAMAAYADAAFgAwABAQEAAQEGAAEGFgAD//8A/wD/AP8ABQAB
        +AIAAQMC/wHnAv8B+AEHA/8B5wH/AfACAAEBAv8BxwL/AcABAAP/AccB/wHAAwAC/wGHAv8BgAEAAX8C
        /wGHAf8BgAMAAv8BBwH/Af4CAAEfAv8BBwH/BAAB/wH+AQcB/wH8AgABDwH/Af4BBwH/BAAB/wH4AQcB
        /wH4AgABBwH/AfgBBwH/AwABAQH/AcABAAH/AfACAAEHAf8BwAEAAf8DAAEBAf8CAAE/AeACAAEDAf8C
        AAE/AYACAAEDAf4CAAEfAeACAAEBAf4CAAEfAYACAAEDAfwCAAEPAcACAAEBAfwCAAEPAcACAAEHAfgC
        AAEHAYACAAEBAfgCAAEHAcACAAEHAfACAAEDAYADAAHwAgABAwHgAgABDwHgAgABAQGAAwAB4AIAAQEB
        4AIAAQ8BwAIAAQEEAAHAAgABAQHwAgABHwGABwABgAMAAfACAAEfAYAHAAGAAwAB+AIAAT8MAAH4AgAB
        PwwAAfwCAAF/DAAB/AIAAX8HAAEBBAAB/gIAAf8HAAEBBAAB/gIAAf8DAAEBAYACAAEBAwABAQH/AQAB
        AQH/AwABAQGAAgABAwMAAQEB/wEAAQEB/wGAAgABAwGAAgABBwGAAgABAwH/AYABAwH/AYACAAEHAcAC
        AAEHAYACAAEHAf8BgAEDAf8BwAIAAQ8B4AIAAQ8BwAIAAQ8B/wHAAQcB/wHgAgABHwHgAgABHwHgAgAB
        HwH/AcABBwH/AfACAAE/AfACAAE/AfACAAE/Af8B4AEPAf8B+AIAAX8B+AIAAX8B+AIAAX8B/wHgAR8B
        /wH8AgAB/wH+AQABAQH/AfwCAAL/AfABfwL/AQABAwL/AQABAwL/AQABAwL/AfgD/wHgAR8C/wHgAR8C
        /wHgAR8B/ws=
</value>
  </data>
  <data name="buttonToolTip.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>Private</value>
  </data>
  <data name="buttonToolTip.Location" type="System.Drawing.Point, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>142, 17</value>
  </data>
  <data name="buttonToolTip.Modifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>Private</value>
  </data>
  <data name="$this.Locked" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>False</value>
  </data>
  <data name="$this.Name">
    <value>FarsiMessageBoxExForm</value>
  </data>
  <data name="$this.Language" type="System.Globalization.CultureInfo, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>(Default)</value>
  </data>
  <data name="$this.TrayLargeIcon" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>False</value>
  </data>
  <data name="$this.Localizable" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>False</value>
  </data>
  <data name="$this.GridSize" type="System.Drawing.Size, System.Drawing, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
    <value>8, 8</value>
  </data>
  <data name="$this.DrawGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </data>
  <data name="$this.TrayHeight" type="System.Int32, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>80</value>
  </data>
  <data name="$this.SnapToGrid" type="System.Boolean, mscorlib, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>True</value>
  </data>
  <data name="$this.DefaultModifiers" type="System.CodeDom.MemberAttributes, System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
    <value>Private</value>
  </data>
</root>

By viewing downloads associated with this article you agree to the Terms of Service and the article's licence.

If a file you wish to view isn't highlighted, and is a text file (not binary), please let us know and we'll add colourisation support for it.

License

This article, along with any associated source code and files, is licensed under The MIT License


Written By
Software Developer (Senior) Readify
Australia Australia
Working on both Java and .NET Technology, I have developed various enterprise level applications on both platforms. Currently, I am working as a Senior Software Developer at Readify which is a leading company on .NET technology in Australia.

Comments and Discussions