Member 14192879 Ответов: 1

Как получить данные из базы данных в календарь в C# winform


Я создал базу данных со столбцами cal_id, имя события, время начала события, время окончания события, дата события.
но я понимаю, как мы можем получить или показать эти данные в элементе управления календарем.
как и в этом случае asp.net, мы используем calender1_dayRender() для извлечения данных из базы данных. как мы можем показать данные календаря из базы данных календарь на C# winform.

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

я нашел код для ... asp.net
но dayRender не доступен в календаре winform.

protected void Calendar1_DayRender(object sender, DayRenderEventArgs e)   
{  
  
    Literal l = new Literal(); //Creating a literal  
    l.Visible = true;  
    l.Text = "<br>"; //for breaking the line in cell  
    e.Cell.Controls.Add(l); //adding in all cell  
  
    da = new SqlDataAdapter("select * from Events", con);  
    DataTable dt = new DataTable();  
    da.Fill(dt);  
    foreach(DataRow dr in dt.Rows)   
    {  
        string x = dr[1].ToString();  
  
        if (dr[1].ToString() == e.Day.Date.ToString()) //comparision  
        {  
            Label lb = new Label();  
            lb.Visible = true;  
            lb.Text = dr[0].ToString();  
  
            string a = lb.Text;  
            e.Cell.Controls.Add(lb);  
            e.Cell.BackColor = System.Drawing.Color.OrangeRed; // changing cell color  
            e.Cell.ToolTip = dr[0].ToString(); //adding tooltip  
        }  
    }

Wendelius

Какой элемент управления календарем вы используете? MonthCalendar?

Member 14192879

да, месячный календарь. есть ли еще какой-нибудь календарь?

1 Ответов

Рейтинг:
2

Maciej Los

Цитата:
как мы можем показать данные календаря из базы данных календарь на C# winform.


Взгляните сюда:
Выбор диапазона дат в элементе управления MonthCalendar - Windows Forms | Microsoft Docs[^]
Отображение определенных дней жирным шрифтом с помощью элемента управления MonthCalendar - Windows Forms | Microsoft Docs[^]
Изменение внешнего вида элемента управления MonthCalendar - Windows Forms | Microsoft Docs[^]
Отображение более одного месяца в элементе управления MonthCalendar - Windows Forms | Microsoft Docs[^]

Цитата:
Чтобы выбрать диапазон дат
1.Создайте объекты DateTime, представляющие первую и последнюю даты в диапазоне.
DateTime projectStart = new DateTime(2001, 2, 13);  
DateTime projectEnd = new DateTime(2001, 2, 28);

2. Установите SelectionRange собственность.
monthCalendar1.SelectionRange = new SelectionRange(projectStart, projectEnd);

или
3. Установите SelectionStart и SelectionEnd свойства.
monthCalendar1.SelectionStart = projectStart;  
monthCalendar1.SelectionEnd = projectEnd;


Вывод: все, что вам нужно сделать, это получить даты (начало и конец) из базы данных и использовать один из вышеперечисленных способов выбора диапазона дат.


Member 14192879

можем ли мы добавить детали встречи ниже даты в календаре месяца?

Maciej Los

Я не знаю. Вы всегда можете отобразить подробную информацию о событии под календарем.