Iulian Mihu Ответов: 1

Объедините календарь datagridview в tablelayoutpanel


public void dataTable(){
DataTable dtSource = new DataTable();
dtSource.Columns.Add("Sunday");
dtSource.Columns.Add("Monday");
dtSource.Columns.Add("Wednesday");
dtSource.Columns.Add("Tuesday");
dtSource.Columns.Add("Friday");
dtSource.Columns.Add("Saturday");
int year = 2020;
int month = 1;
int DaysInMonth = DateTime.DaysInMonth(year, month);
int i = 1;
for (int weak = 0; weak <= 5; weak++){
    DataRow newday = dtSource.NewRow();
    for (int day = 1; day <= 7; day++){
        if (i > DaysInMonth) break;
           DateTime dDate = DateTime.Parse(year.ToString()+"-"+month.ToString()+"-"+i.ToString());
           DayOfWeek dayWeek = CultureInfo.InvariantCulture.Calendar.GetDayOfWeek(dDate);
           newday[dayWeek.ToString()] = i.ToString();
           i++;
           if (dayWeek.ToString() == "Saturday") break;
    }
    dtSource.Rows.Add(newday);
    if (i > DaysInMonth) break;
  }
  dataGridView1.DataSource = dtSource;
}


Что я уже пробовал:

Я хочу превратить это в управления tablelayoutpanel. Любой помочь ?

Gerry Schmitz

Вот для чего нужен элемент управления календарем.

1 Ответов

Рейтинг:
12

RickZeeland

Смотрите код здесь: Календарь с использованием Windows Forms TableLayoutPanel (C#) · GitHub[^]

Если вы столкнулись с проблемами мерцания, смотрите ответ здесь: c# - как лучше всего подойти к созданию календаря в winforms? - переполнение стека[^]


Iulian Mihu

спасибо...