示例#1
0
        //Hiển thị ngày âm, tháng âm và giờ hoàng đạo
        private void DisplayLunnarDate(DateTime date)
        {
            #region Chú thích
            LuniSolarDate <VietnameseLocalInfoProvider> lunnardate = LuniSolarCalendar <VietnameseLocalInfoProvider> .LuniSolarDateFromSolarDate(date);

            LunnarSample.LunnarCalendar lunnar = new LunnarSample.LunnarCalendar();
            #endregion

            #region Lấy thông tin ngày âm
            labelLunnarDay.Text      = lunnardate.Day.ToString();
            labelLunnarDay.ForeColor = ColorLunnar;
            labelLunnarDay.Location  = new Point((PanelLunnarDay.Size.Width / 2) - (labelLunnarDay.Size.Width / 2), 32);
            #endregion

            #region Lấy thông tin ngày hoàng đạo
            if (lunnar.IsZodiacDay(date, lunnardate.Month) == 1)
            {
                PictureZodiac.IconChar  = FontAwesome.Sharp.IconChar.YinYang;
                PictureZodiac.IconColor = Color.Yellow;
            }
            else if (lunnar.IsZodiacDay(date, lunnardate.Month) == -1)
            {
                PictureZodiac.IconChar  = FontAwesome.Sharp.IconChar.YinYang;
                PictureZodiac.IconColor = Color.Black;
            }
            else
            {
                PictureZodiac.IconChar = FontAwesome.Sharp.IconChar.None;
            }
            #endregion

            #region Lấy thông tin tháng âm
            ButtonLunnarMonth.Text = string.Format("Tháng {0}", lunnardate.Month);
            #endregion
        }
示例#2
0
        void AddNumberIntoMatrix(DateTime date)
        {
            ClearMatrix();
            DateTime useDate     = new DateTime(date.Year, date.Month, 1);
            int      firstcolumn = DateOfWeek.IndexOf(useDate.DayOfWeek.ToString());

            LunnarSample.LunnarCalendar lunnarCalendar = new LunnarSample.LunnarCalendar();
            int line   = 0;
            int column = 0;
            int num    = 0;

            if (firstcolumn != 0)
            {
                if (date.Month == 1)
                {
                    useDate = new DateTime(date.Year - 1, 12, 31 - firstcolumn + 1);
                }
                else
                {
                    useDate = new DateTime(date.Year, date.Month - 1, DayOfMonth(new DateTime(date.Year, date.Month - 1, 1)) - firstcolumn + 1);
                }
                for (int i = 0; i < firstcolumn; i++)
                {
                    LuniSolarDate <VietnameseLocalInfoProvider> lunnardate = LuniSolarCalendar <VietnameseLocalInfoProvider> .LuniSolarDateFromSolarDate(useDate);

                    column = DateOfWeek.IndexOf(useDate.DayOfWeek.ToString());
                    CustomButton btn = Matrix[line][column];
                    btn.TextColor            = Color.DarkGray;
                    btn.Horizontal_Alignment = StringAlignment.Near;
                    btn.ButtonText           = useDate.Day.ToString();
                    btn.SLunnarDay           = lunnardate.Day;
                    btn.SLunnarMonth         = lunnardate.Month;
                    btn.ZodiacDay            = lunnarCalendar.IsZodiacDay(useDate, lunnardate.Month);
                    btn.LunnarDayColor       = Color.DarkGray;
                    btn.Click += PreviousBttn_Click;
                    useDate    = useDate.AddDays(1);
                    MatrixColor[line][column] = btn.BackColor;
                    num++;
                }
            }
            useDate = new DateTime(date.Year, date.Month, 1);
            for (int i = 1; i <= DayOfMonth(date); i++)
            {
                column = DateOfWeek.IndexOf(useDate.DayOfWeek.ToString());
                LuniSolarDate <VietnameseLocalInfoProvider> lunnardate = LuniSolarCalendar <VietnameseLocalInfoProvider> .LuniSolarDateFromSolarDate(useDate);

                CustomButton btn = Matrix[line][column];

                //btn.BackColor = Color.PaleTurquoise;
                btn.Horizontal_Alignment = StringAlignment.Near;
                btn.ButtonText           = i.ToString();
                btn.SLunnarDay           = lunnardate.Day;
                btn.SLunnarMonth         = lunnardate.Month;
                btn.ZodiacDay            = lunnarCalendar.IsZodiacDay(useDate, lunnardate.Month);
                btn.LunnarDayColor       = Color.Red;
                btn.Click += ButtonNum_Click;

                if (IsEqualDate(useDate, DateTime.Now))
                {
                    btn.TextColor = Color.Aqua;
                }
                if ((IsEqualDate(useDate, dtpk.Value)) && (btn.BackColor != Color.Aqua))
                {
                    btn.TextColor = Color.SandyBrown;
                }

                //Những ngày lễ
                int k = IsPublicDay(useDate);
                if (k == 1)
                {
                    btn.TextColor = Color.Red;
                }
                else if (k == 0)
                {
                    btn.TextColor = Color.BlueViolet;
                }
                if (k == -1)
                {
                    btn.TextColor = Color.Red;
                }

                MatrixColor[line][column] = btn.BackColor;
                if (column >= 6)
                {
                    line++;
                }
                useDate = useDate.AddDays(1);
                num++;
            }
            {
                if (date.Month == 12)
                {
                    useDate = new DateTime(date.Year + 1, 1, 1);
                }
                else
                {
                    useDate = new DateTime(date.Year, date.Month + 1, 1);
                }
                for (int i = 1; i <= (42 - num); i++)
                {
                    column = DateOfWeek.IndexOf(useDate.DayOfWeek.ToString());
                    LuniSolarDate <VietnameseLocalInfoProvider> lunnardate = LuniSolarCalendar <VietnameseLocalInfoProvider> .LuniSolarDateFromSolarDate(useDate);

                    CustomButton btn = Matrix[line][column];
                    btn.Click += NextBttn_Click;
                    btn.Horizontal_Alignment  = StringAlignment.Near;
                    btn.ButtonText            = useDate.Day.ToString();
                    btn.SLunnarDay            = lunnardate.Day;
                    btn.SLunnarMonth          = lunnardate.Month;
                    btn.ZodiacDay             = lunnarCalendar.IsZodiacDay(useDate, lunnardate.Month);
                    btn.LunnarDayColor        = Color.DarkGray;
                    btn.TextColor             = Color.DarkGray;
                    MatrixColor[line][column] = btn.BackColor;
                    if (column >= 6)
                    {
                        line++;
                    }
                    useDate = useDate.AddDays(1);
                }
            }
        }