Esempio n. 1
0
        // هماهنگ کننده روزها
        private void SetDay(int selDay)
        {
            int dayNumber = 1;

            SMAH1.Persian.Date dtFirstDay = new SMAH1.Persian.Date(dtDefaultDate.Year.ToString() + "/" + dtDefaultDate.Month.ToString() + "/1");
            int numFirstDay = (int)dtFirstDay.DayOfWeek;

            numFirstDay++;
            numFirstDay %= 7;
            int allDay = dtFirstDay.AddMonths(1).ToInteger(dtFirstDay);

            for (int j = 0; j < lstDay.Count; j++)
            {
                lstDay[j].Text     = lstDay[j].Value = string.Empty;
                lstDay[j].Selected = lstDay[j].Visible = false;
            }
            for (int i = numFirstDay; i < (allDay + numFirstDay); i++)
            {
                lstDay[i].Text    = lstDay[i].Value = string.Format("{0:D2}", dayNumber);
                lstDay[i].Visible = true;
                if (selDay == dayNumber)
                {
                    lstDay[i].Selected = true;
                }
                dayNumber++;
            }
        }
Esempio n. 2
0
        public static DatePickerValue Parse(string s)
        {
            s = s.ToPersianStandardAlphabet();
            DatePickerValue dv = new DatePickerValue();

            if (!string.IsNullOrEmpty(s))
            {
                foreach (DateConcept dc in SMAH1.EnumInfoBase <DateConcept> .GetFields())
                {
                    if (string.Compare(
                            s.RemoveDiacritics().Replace("" + SPACE, "").Replace("" + SEMI_SPACE, ""),
                            SMAH1.EnumInfoBase <DateConcept> .GetFieldDescription(dc, 0).RemoveDiacritics().Replace("" + SPACE, "").Replace("" + SEMI_SPACE, "")
                            ) == 0)
                    {
                        dv = SetConcept(dc);
                        break;
                    }
                }

                if (dv.IsEmpty)
                {
                    SMAH1.Persian.Date dt = new SMAH1.Persian.Date(s);
                    if (dt.DayOfMonth == 0)
                    {
                        throw new Exception("Format Invalid");
                    }
                    dv = DatePickerValue.FromDate(dt);
                }
            }

            return(dv);
        }
Esempio n. 3
0
            public override object CalculateColumnValue(double value)
            {
                int v = (int)value;

                v += baseColumnValue;
                SMAH1.Persian.Date d = SMAH1.Persian.Date.FromIntegerOf1300(v);
                return(d.ToString());
            }
Esempio n. 4
0
        // انتخاب تاریخ مفهومی
        private void SetDinamicValue(object sender)
        {
            DatePickerHelperLabel sl = (DatePickerHelperLabel)sender;

            dt      = new SMAH1.Persian.Date(sl.Value);
            isEmpty = false;
            DatePickerCompleteChangeDate();
            OnChangeDate();
        }
Esempio n. 5
0
        // انتخاب تاریخ مفهومی
        private void SetDinamicValue(object sender)
        {
            DatePickerHelperLabel sl = (DatePickerHelperLabel)sender;

            dt      = new SMAH1.Persian.Date(sl.Value);
            isEmpty = false;
            OnChangeDate();
            (Parent as PopupComponent).Close();
        }
Esempio n. 6
0
 // ماه قبل
 private void PreviousMonth()
 {
     dtDefaultDate = dtDefaultDate.AddMonths(-1);
     SetYears(dtDefaultDate.Year);
     SetMonth(dtDefaultDate.Month);
     SetDay(dtDefaultDate.DayOfMonth);
     dpdc = DateConcept.None;
     dt   = dtDefaultDate;
     OnChangeDate();
 }
Esempio n. 7
0
 public override double ColumnValue(int indexColumn)
 {
     if (baseColumnValue == -1)
     {
         SMAH1.Persian.Date d1 = new SMAH1.Persian.Date(this.ColumnName(0));
         baseColumnValue = d1.ToIntegerOf1300();
     }
     SMAH1.Persian.Date d3 = new SMAH1.Persian.Date(this.ColumnName(indexColumn));
     return(d3.ToIntegerOf1300() - baseColumnValue);
 }
Esempio n. 8
0
 public void Empty()
 {
     dpdc          = DateConcept.None;
     dtDefaultDate = SMAH1.Persian.Date.Now;
     SetYears(dtDefaultDate.Year);
     SetMonth(dtDefaultDate.Month);
     SetDay(dtDefaultDate.DayOfMonth);
     dt      = SMAH1.Persian.Date.Empty;
     isEmpty = true;
     OnChangeDate();
 }
Esempio n. 9
0
 // ماه بعد
 private void NextMonth()
 {
     dtDefaultDate = dtDefaultDate.AddMonths(1);
     SetYears(dtDefaultDate.Year);
     SetMonth(dtDefaultDate.Month);
     SetDay(dtDefaultDate.DayOfMonth);
     dpdc = DateConcept.None;
     dt   = dtDefaultDate;
     DatePickerCompleteChangeDate();
     OnChangeDate();
 }
Esempio n. 10
0
        public static DatePickerValue FromDate(SMAH1.Persian.Date date)
        {
            DatePickerValue dv = new DatePickerValue
            {
                DateSelection = date,
                NotEmpty      = true,
                IsConcept     = false
            };

            return(dv);
        }
Esempio n. 11
0
 // سازنده
 public DatePickerPopup()
 {
     InitializeComponent();
     this.Size          = new Size(150, 150);
     YearPanel.Location = new Point(0, -150);
     nowDate            = SMAH1.Persian.Date.Now;
     ListCreator();
     SetDinamicValue();
     SetDefaultLayout(false);
     SetYears(dtDefaultDate.Year);
     SetMonth(dtDefaultDate.Month);
     SetDay(dtDefaultDate.DayOfMonth);
 }
Esempio n. 12
0
        private void CreateData()
        {
            Random rnd = new Random();

            dts1 = new List <DataTable>();
            dts2 = new List <DataTable>();

            for (int i = 0; i < tblCount; i++)
            {
                DataTable          dt   = new DataTable("A" + dts1.Count);
                SMAH1.Persian.Date date = new SMAH1.Persian.Date("1390/01/01");

                List <object> lstInt = new List <object>();
                int           max    = (int)Math.Pow(7, i + 2);
                for (int j = 0; j < rowCount; j++)
                {
                    date = date.AddDays(rnd.Next(1, 10));
                    dt.Columns.Add(date.ToString(), typeof(Int32));
                    lstInt.Add(rnd.Next(max));
                }

                dt.Rows.Add(lstInt.ToArray());

                //string name = 123.xml";
                //dt.ReadXmlSchema(name.Replace(".xml", "_SCH.xml"));
                //dt.ReadXml(name);

                dts1.Add(dt);
            }
            for (int i = 0; i < tblCount; i++)
            {
                SMAH1.Persian.Date date = new SMAH1.Persian.Date("1391/01/01");
                DataTable          dt   = new DataTable("B" + dts2.Count);

                List <object> lstInt = new List <object>();
                for (int j = 0; j < rowCount; j++)
                {
                    date = date.AddDays(rnd.Next(1, 10));
                    dt.Columns.Add(date.ToString(), typeof(Int32));
                    lstInt.Add(rnd.Next(10));
                }

                dt.Rows.Add(lstInt.ToArray());

                dts2.Add(dt);
            }
        }
Esempio n. 13
0
        // انتخاب سال
        private void SelectYear(object sender, MouseEventArgs e)
        {
            HideYearTimer.Start();
            DatePickerHelperLabel sl = (DatePickerHelperLabel)sender;

            lblYearGo.Text  = sl.Text;
            lblYearGo.Value = sl.Value;
            int iDef = Convert.ToInt32(sl.Value) - dtDefaultDate.Year;

            dtDefaultDate = dtDefaultDate.AddYears(iDef);
            SMAH1.Persian.Date dResult = dtDefaultDate;
            dpdc = DateConcept.None;
            dt   = dResult;
            SetYears(dtDefaultDate.Year);
            SetMonth(dtDefaultDate.Month);
            OnChangeDate();
        }
Esempio n. 14
0
        // انتخاب ماه
        private void SelectMonth(object sender, MouseEventArgs e)
        {
            HideMonthTimer.Start();
            DatePickerHelperLabel sl = (DatePickerHelperLabel)sender;

            lblMonthGO.Text  = sl.Text + " " + dtDefaultDate.Year.ToString();
            lblMonthGO.Value = sl.Value;
            int iDef = Convert.ToInt32(sl.Value) - dtDefaultDate.Month;

            dtDefaultDate = dtDefaultDate.AddMonths(iDef);
            SMAH1.Persian.Date dResult = dtDefaultDate;
            dpdc = DateConcept.None;
            dt   = dResult;
            SetMonth(dtDefaultDate.Month);
            SetDay(dtDefaultDate.DayOfMonth);
            OnChangeDate();
        }
Esempio n. 15
0
        // انتخاب روز
        private void SelectDay(object sender, MouseEventArgs e)
        {
            for (int i = 0; i < lstDay.Count; i++)
            {
                lstDay[i].Selected = false;
            }
            DatePickerHelperLabel sl = (DatePickerHelperLabel)sender;
            int def = (Convert.ToInt32(sl.Value) - dtDefaultDate.DayOfMonth);

            sl.Selected   = true;
            dtDefaultDate = dtDefaultDate.AddDays(def);
            SMAH1.Persian.Date dResult = dtDefaultDate;
            dpdc    = DateConcept.None;
            dt      = dResult;
            isEmpty = false;
            DatePickerCompleteChangeDate();
            OnChangeDate();
        }
Esempio n. 16
0
        public static bool TryParse(string s, out DatePickerValue dv)
        {
            bool ret = false;

            s  = s.ToPersianStandardAlphabet();
            dv = new DatePickerValue();
            if (string.IsNullOrEmpty(s))
            {
                ret = true;
            }
            else
            {
                foreach (DateConcept dc in SMAH1.EnumInfoBase <DateConcept> .GetFields())
                {
                    if (string.Compare(
                            s.RemoveDiacritics().Replace("" + SPACE, "").Replace("" + SEMI_SPACE, ""),
                            SMAH1.EnumInfoBase <DateConcept> .GetFieldDescription(dc, 0).RemoveDiacritics().Replace("" + SPACE, "").Replace("" + SEMI_SPACE, "")
                            ) == 0)
                    {
                        dv  = SetConcept(dc);
                        ret = true;
                        break;
                    }
                }

                if (dv.IsEmpty)
                {
                    SMAH1.Persian.Date dt = new SMAH1.Persian.Date(s);
                    if (dt.DayOfMonth == 0)
                    {
                        ret = false;
                    }
                    else
                    {
                        ret = true;
                        dv  = DatePickerValue.FromDate(dt);
                    }
                }
            }

            return(ret);
        }