Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/325.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Calendar.NET控件FirstDayOfWeek_C# - Fatal编程技术网

C# Calendar.NET控件FirstDayOfWeek

C# Calendar.NET控件FirstDayOfWeek,c#,C#,我正在使用VB.NET上的组件,但我想将星期一改为星期一 这是代码呈现日历 我碰巧把那天的名字改成了土耳其语,但我无法改变第一天的名字 private void RenderMonthCalendar(PaintEventArgs e) { _calendarDays.Clear(); _calendarEvents.Clear(); var bmp = new Bitmap(ClientSize.Width, ClientSize

我正在使用VB.NET上的组件,但我想将星期一改为星期一

这是代码呈现日历

我碰巧把那天的名字改成了土耳其语,但我无法改变第一天的名字

    private void RenderMonthCalendar(PaintEventArgs e)
    {
        _calendarDays.Clear();
        _calendarEvents.Clear();
        var bmp = new Bitmap(ClientSize.Width, ClientSize.Height);
        Graphics g = Graphics.FromImage(bmp);
        e.Graphics.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAliasGridFit;
        g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAliasGridFit;
        SizeF monSize = g.MeasureString("Pazartesi", _dayOfWeekFont);
        SizeF tueSize = g.MeasureString("Salı", _dayOfWeekFont);
        SizeF wedSize = g.MeasureString("Çarşamba", _dayOfWeekFont);
        SizeF thuSize = g.MeasureString("Perşembe", _dayOfWeekFont);
        SizeF friSize = g.MeasureString("Cuma", _dayOfWeekFont);
        SizeF satSize = g.MeasureString("Cumartesi", _dayOfWeekFont);
        SizeF sunSize = g.MeasureString("Pazar", _dayOfWeekFont);
        SizeF dateHeaderSize = g.MeasureString(
            _calendarDate.ToString("MMMM") + " " + _calendarDate.Year.ToString(new CultureInfo("tr-TR")), _dateHeaderFont);
        int headerSpacing = Max(sunSize.Height, monSize.Height, tueSize.Height, wedSize.Height, thuSize.Height, friSize.Height,
                      satSize.Height) + 5;
        int controlsSpacing = ((!_showTodayButton) && (!_showDateInHeader) && (!_showArrowControls)) ? 0 : 30;
        int cellWidth = (ClientSize.Width - MarginSize * 2) / 7;
        int numWeeks = NumberOfWeeks(_calendarDate.Year, _calendarDate.Month);
        int cellHeight = (ClientSize.Height - MarginSize * 2 - headerSpacing - controlsSpacing) / numWeeks;
        int xStart = MarginSize;
        int yStart = MarginSize;
        DayOfWeek startWeekEnum = new DateTime(_calendarDate.Year, _calendarDate.Month, 1).DayOfWeek;
        int startWeek = ((int)startWeekEnum) + 1;
        int rogueDays = startWeek - 1;

        yStart += headerSpacing + controlsSpacing;

        int counter = 1;
        int counter2 = 1;

        bool first = false;
        bool first2 = false;

        _btnToday.Location = new Point(MarginSize, MarginSize);

        for (int y = 0; y < numWeeks; y++)
        {
            for (int x = 0; x < 7; x++)
            {
                if (rogueDays == 0 && counter <= DateTime.DaysInMonth(_calendarDate.Year, _calendarDate.Month))
                {
                    if (!_calendarDays.ContainsKey(counter))
                        _calendarDays.Add(counter, new Point(xStart, (int)(yStart + 2f + g.MeasureString(counter.ToString(new CultureInfo("tr-TR")), _daysFont).Height)));

                    if (_calendarDate.Year == DateTime.Now.Year && _calendarDate.Month == DateTime.Now.Month
                     && counter == DateTime.Now.Day && _highlightCurrentDay)
                    {
                        g.FillRectangle(new SolidBrush(Color.FromArgb(234, 234, 234)), xStart, yStart, cellWidth, cellHeight);
                    }

                    if (first == false)
                    {
                        first = true;
                        if (_calendarDate.Year == DateTime.Now.Year && _calendarDate.Month == DateTime.Now.Month
                     && counter == DateTime.Now.Day)
                        {
                            g.DrawString(
                                _calendarDate.ToString("MMM") + " " + counter.ToString(new CultureInfo("tr-TR")),
                                _todayFont, Brushes.Black, xStart + 5, yStart + 2);
                        }
                        else
                        {
                            g.DrawString(
                                _calendarDate.ToString("MMM") + " " + counter.ToString(new CultureInfo("tr-TR")),
                                _daysFont, Brushes.Black, xStart + 5, yStart + 2);
                        }
                    }
                    else
                    {
                        if (_calendarDate.Year == DateTime.Now.Year && _calendarDate.Month == DateTime.Now.Month
                     && counter == DateTime.Now.Day)
                        {
                            g.DrawString(counter.ToString(new CultureInfo("tr-TR")), _todayFont, Brushes.Black, xStart + 5, yStart + 2);
                        }
                        else
                        {
                            g.DrawString(counter.ToString(new CultureInfo("tr-TR")), _daysFont, Brushes.Black, xStart + 5, yStart + 2);
                        }
                    }
                    counter++;
                }
                else if (rogueDays > 0)
                {
                    int dm =
                        DateTime.DaysInMonth(_calendarDate.AddMonths(-1).Year, _calendarDate.AddMonths(-1).Month) -
                        rogueDays + 1;
                    g.DrawString(dm.ToString(new CultureInfo("tr-TR")), _daysFont, new SolidBrush(Color.FromArgb(170, 170, 170)), xStart + 5, yStart + 2);
                    rogueDays--;
                }

                g.DrawRectangle(Pens.DarkGray, xStart, yStart, cellWidth, cellHeight);
                if (rogueDays == 0 && counter > DateTime.DaysInMonth(_calendarDate.Year, _calendarDate.Month))
                {
                    if (first2 == false)
                        first2 = true;
                    else
                    {
                        if (counter2 == 1)
                        {
                            g.DrawString(_calendarDate.AddMonths(1).ToString("MMM") + " " + counter2.ToString(new CultureInfo("tr-TR")), _daysFont,
                                         new SolidBrush(Color.FromArgb(170, 170, 170)), xStart + 5, yStart + 2);
                        }
                        else
                        {
                            g.DrawString(counter2.ToString(new CultureInfo("tr-TR")), _daysFont,
                                         new SolidBrush(Color.FromArgb(170, 170, 170)), xStart + 5, yStart + 2);
                        }
                        counter2++;
                    }
                }
                xStart += cellWidth;
            }
            xStart = MarginSize;
            yStart += cellHeight;
        }
        yStart = MarginSize + controlsSpacing;
        xStart = MarginSize + ((cellWidth - (int)sunSize.Width) / 2);
        g.DrawString("Pazar", _dayOfWeekFont, Brushes.Black, xStart, yStart);

        xStart = MarginSize + ((cellWidth - (int)monSize.Width) / 2) + cellWidth;
        g.DrawString("Pazartesi", _dayOfWeekFont, Brushes.Black, xStart, yStart);

        xStart = MarginSize + ((cellWidth - (int)tueSize.Width) / 2) + cellWidth * 2;
        g.DrawString("Salı", _dayOfWeekFont, Brushes.Black, xStart, yStart);

        xStart = MarginSize + ((cellWidth - (int)wedSize.Width) / 2) + cellWidth * 3;
        g.DrawString("Çarşamba", _dayOfWeekFont, Brushes.Black, xStart, yStart);

        xStart = MarginSize + ((cellWidth - (int)thuSize.Width) / 2) + cellWidth * 4;
        g.DrawString("Perşembe", _dayOfWeekFont, Brushes.Black, xStart, yStart);

        xStart = MarginSize + ((cellWidth - (int)friSize.Width) / 2) + cellWidth * 5;
        g.DrawString("Cuma", _dayOfWeekFont, Brushes.Black, xStart, yStart);

        xStart = MarginSize + ((cellWidth - (int)satSize.Width) / 2) + cellWidth * 6;
        g.DrawString("Cumartesi", _dayOfWeekFont, Brushes.Black, xStart, yStart);


        if (_showDateInHeader)
        {
            g.DrawString(
                _calendarDate.ToString("MMMM") + " " + _calendarDate.Year.ToString(new CultureInfo("tr-TR")),
                _dateHeaderFont, Brushes.Black, ClientSize.Width - MarginSize - dateHeaderSize.Width,
                MarginSize);
        }

        _events.Sort(new EventComparer());

        for (int i = 1; i <= DateTime.DaysInMonth(_calendarDate.Year, _calendarDate.Month); i++)
        {
            int renderOffsetY = 0;

            foreach (IEvent v in _events)
            {
                var dt = new DateTime(_calendarDate.Year, _calendarDate.Month, i, 23, 59, _calendarDate.Second);
                if (NeedsRendering(v, dt))
                {
                    int alpha = 255;
                    if (!v.Enabled && _dimDisabledEvents)
                        alpha = 64;
                    Color alphaColor = Color.FromArgb(alpha, v.EventColor.R, v.EventColor.G, v.EventColor.B);

                    int offsetY = renderOffsetY;
                    Region r = g.Clip;
                    Point point = _calendarDays[i];
                    SizeF sz = g.MeasureString(v.EventText, v.EventFont);
                    int yy = point.Y - 1;
                    int xx = ((cellWidth - (int)sz.Width) / 2) + point.X;

                    if (sz.Width > cellWidth)
                        xx = point.X;
                    if (renderOffsetY + sz.Height > cellHeight - 10)
                        continue;
                    g.Clip = new Region(new Rectangle(point.X + 1, point.Y + offsetY, cellWidth - 1, (int)sz.Height));
                    g.FillRectangle(new SolidBrush(alphaColor), point.X + 1, point.Y + offsetY, cellWidth - 1, sz.Height);
                    if (!v.Enabled && _showDashedBorderOnDisabledEvents)
                    {
                        var p = new Pen(new SolidBrush(Color.FromArgb(255, 0, 0, 0))) { DashStyle = DashStyle.Dash };
                        g.DrawRectangle(p, point.X + 1, point.Y + offsetY, cellWidth - 2, sz.Height - 1);
                    }
                    g.DrawString(v.EventText, v.EventFont, new SolidBrush(v.EventTextColor), xx, yy + offsetY);
                    g.Clip = r;

                    var ev = new CalendarEvent
                    {
                        EventArea =
                            new Rectangle(point.X + 1, point.Y + offsetY, cellWidth - 1,
                                          (int)sz.Height),
                        Event = v,
                        Date = dt
                    };

                    _calendarEvents.Add(ev);
                    renderOffsetY += (int)sz.Height + 1;
                }
            }
        }
        _rectangles.Clear();

        g.Dispose();
        e.Graphics.DrawImage(bmp, 0, 0, ClientSize.Width, ClientSize.Height);
        bmp.Dispose();
    }
private void RenderMonthCalendar(PaintEventArgs e)
{
_calendarDays.Clear();
_calendarEvents.Clear();
var bmp=新位图(ClientSize.Width、ClientSize.Height);
Graphics g=Graphics.FromImage(bmp);
e、 Graphics.TextRenderingHint=System.Drawing.Text.TextRenderingHint.AntiAliasGridFit;
g、 TextRenderingHint=System.Drawing.Text.TextRenderingHint.AntiAliasGridFit;
SizeF monSize=g.MeasureString(“Pazartesi”,星期五);
SizeF tueSize=g.测量限制(“Salı”,_dayOfWeekFont);
SizeF wedSize=g.测量(“şamba”,_dayOfWeekFont);
SizeF thuSize=g.MeasureString(“每星期一日”);
SizeF friSize=g.测量值(“Cuma”、\u dayOfWeekFont);
SizeF satSize=g.测量值(“Cumartesi”,星期五);
SizeF sunSize=g.测量限制(“Pazar”,周方);
SizeF dateHeaderSize=g.MeasureString(
_calendarDate.ToString(“MMMM”)+“+”calendarDate.Year.ToString(新文化信息(“tr”),_dateHeaderFont);
int HEADERSPACE=Max(sunSize.Height、monSize.Height、tueSize.Height、wedSize.Height、thuSize.Height、friSize.Height、,
高度)+5;
int controls space=(!\u showtoday按钮)和(!\u showtdateinheader)和(!\u showtarrowcontrols))?0:30;
int cellWidth=(ClientSize.Width-MarginSize*2)/7;
int numWeeks=NumberOfWeeks(_calendarDate.Year,_calendarDate.Month);
int cellHeight=(ClientSize.Height-MarginSize*2-headerspace-controlssspace)/numweek;
int xStart=MarginSize;
int yStart=MarginSize;
DayOfWeek startWeekEnum=新的日期时间(_calendarDate.Year,_calendarDate.Month,1)。DayOfWeek;
int startWeek=((int)startWeekEnum)+1;
int rogueDays=startWeek-1;
yStart+=头部起搏+控制起搏;
int计数器=1;
int计数器2=1;
bool first=false;
bool first2=假;
_btnToday.Location=新点(MarginSize,MarginSize);
对于(int y=0;yDateTime.DaysInMonth(\u calendarDate.Year,\u calendarDate.Month))
{
if(first2==false)
first2=真;
其他的
{
如果(计数器2==1)
{
g、 DrawString(_calendarDate.AddMonths(1).ToString(“MMM”)+“”+counter2.ToString(new CultureInfo(“tr”),_daysFont,
新的SolidBrush(颜色为argb(170170170)),xStart+5,yStart+2;
}
其他的
{
g、 抽绳(计数器2.ToString(新文化信息(“tr”)),\u daysFont,
新的SolidBrush(颜色为argb(170170170)),xStart+5,yStart+2;
}
计数器2++;
}
}
xStart+=cellWidth;
}
xStart=MarginSize;
yStart+=单元高度;
}
yStart=MarginSize+controlsSpacing;
xStart=MarginSize+((cellWidth-(int)sunSize.Width)/2);
g、 抽绳(“Pazar”,dayOfWeekFont,刷子。黑色,xStart,yStart);
xStart=MarginSize+((cellWidth-(int)monSize.Width)/2)+cellWidth;
g、 抽绳(“Pazartesi”,(dayOfWeekFont,Brush.Black,xStart,yStart);
xStart=MarginSize+((cellWidth-(int)tueSize.Width)/2)+cellWidth*2;
g、 抽绳(“Salı”,“dayOfWeekFont,Brush.Black,xStart,yStart”);
xStart=MarginSize+((cellWidth-(int)wedSize.Width)/2)+cellWidth*3;
g、 抽绳(“şaramba”,“dayOfWeekFont,Brushes.Black,xStart,yStart”);
xStart=MarginSize+((cellWidth-(int)thuSize.Width)/2)+cellWidth*4;
g、 抽绳(“Perşembe”,“dayOfWeekFont,Brushes.Black,xStart,yStart”);
xStart=MarginSize+((cellWidth-(int)friSize.Width)/2)+cellWidth*5;
g、 抽绳(“Cuma”),_dayOfWeekFont,刷子。黑色,xStart,yStart);
xStart=MarginSize+((cellWidth-(int)satSize.Width)/2)+cellWidth*6;
g、 抽绳(“Cumartesi”,dayOfWeekFont,Brushes.Black,xStart,yStart);
如果(_showDateInHeader)
{
g、 抽绳(
_calendarDate.ToString(“MMMM”)+“”+_calendarDate.Year.ToString(新文化信息(“tr”)),
_dateHeaderFont,Brush.Black,ClientSize.Width-MarginSize-dateHeaderSize.Width,
边缘化);
}
_排序(新的EventComparer());
对于(int i=1;i单元格宽度)
xx=点X;
如果(renderofsety+sz.Height>cellHeight-10)
继续;
g、 Clip=新区域(新矩形(点.X+1,点.Y+offsetY,cellWidth-1,(int)sz.Height));
g、 圆角矩形(新的SolidBrush(alp