Форум программистов, компьютерный форум, киберфорум
C# Windows Forms
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/34: Рейтинг темы: голосов - 34, средняя оценка - 4.91
8 / 8 / 6
Регистрация: 25.12.2013
Сообщений: 192
.NET 4.x

Подсветка даты в monthCalendar

30.05.2014, 18:11. Показов 7224. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет! Вот столкнулся вопросом. На форме есть monthCalendar и два dataGridView. Задача заключается в следующем нужно чтоб даты из dataGridView1 в monthCalendar были например в зеленом квадратике, а даты из dataGridView2 в monthCalendar были например в красном квадратике. И желательно чтоб еще чтоб если даты из dataGridView совпадали то в monthCalendar были, например в синим квадратике

Добавлено через 1 час 33 минуты
Как выделять жирным даты я знаю. Вот так
C#
1
2
3
4
5
6
7
DateTime myVacation1 = new DateTime(2014, 5, 10);
        DateTime myVacation2 = new DateTime(2014, 5, 17);
private void button1_Click(object sender, EventArgs e)
        {
            DateTime[] VacationDates = { myVacation1, myVacation2 };
            monthCalendar1.BoldedDates = VacationDates;
        }
Добавлено через 19 часов 40 минут
Попробовал выделить жирным шрифтом даты согласно таблицы вот так
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
foreach (DataGridViewRow x in dataGridView1.Rows) 
            {
                try
                {
                    if (x.Cells[0].Value.ToString() != "")
                    {
                        DateTime d = new DateTime();
                        DateTime.TryParse(x.Cells[0].Value.ToString(), out d); 
 
                 DateTime[] VacationDates = { d };
            monthCalendar1.BoldedDates = VacationDates;
                    }
                }
                catch
                {}
            }
Выделяется дата только из последней строки таблицы
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
30.05.2014, 18:11
Ответы с готовыми решениями:

MonthCalendar выбор даты
Как при выборе конкретной даты в month calendar выводить соответствующую запись в Text Box Например если выбрано 04.07.18 и в text box...

Использование даты из MonthCalendar в SQL запросе
Доброго времени суток) Пытаюсь в базу засунуть дату (формат ячейки date) //DateTime date = _date.SelectionStart; ...

Формат даты MonthCalendar
При нажатие на календарный день , у меня идет событие ..... private void monthCalendar1_DateSelected(object sender,...

8
8 / 8 / 6
Регистрация: 25.12.2013
Сообщений: 192
31.05.2014, 20:24  [ТС]
Есть у кого нибудь мысли? Может не winForm использовать?
0
Заблокирован
31.05.2014, 20:47
malta87, так вам достаточно выделять полужирным нужные даты? У вас же массив пересоздается в цикле, поэтому и выделяет только дату из последней строки. Попробуйте так:


C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
            foreach (DataGridViewRow x in dataGridView1.Rows)
            {
                try
                {
                    if (x.Cells[0].Value.ToString() != "")
                    {
                        DateTime d = new DateTime();
                        DateTime.TryParse(x.Cells[0].Value.ToString(), out d);
                        monthCalendar1.AddBoldedDate(d);
                    }
                }
                catch(Exception ex)
                { MessageBox.Show(ex.Message); }
            }
2
8 / 8 / 6
Регистрация: 25.12.2013
Сообщений: 192
01.06.2014, 18:32  [ТС]
Вообще главная задача вот эта
Цитата Сообщение от malta87 Посмотреть сообщение
Всем привет! Вот столкнулся вопросом. На форме есть monthCalendar и два dataGridView. Задача заключается в следующем нужно чтоб даты из dataGridView1 в monthCalendar были например в зеленом квадратике, а даты из dataGridView2 в monthCalendar были например в красном квадратике. И желательно чтоб еще чтоб если даты из dataGridView совпадали то в monthCalendar были, например в синим квадратике
А выделение жирным рассматривался как запасной

Добавлено через 15 часов 47 минут
Ev_Hyper, Вам способ выдает почему то ошибку-"Ссылка на объект не указывает на экземпляр объекта".

Добавлено через 5 часов 50 минут
Облазил весь инет и про выделение цветом ничего нет. В принципе мне хватит тогда и выделение жирным шрифтом. Вот пример.
Вот если даты известны,то этот массив работает
C#
1
2
3
4
5
6
7
this.monthCalendar1.AnnuallyBoldedDates =
            new System.DateTime[] { new System.DateTime(2014, 5, 20, 0, 0, 0, 0),
                                    new System.DateTime(2014, 5, 28, 0, 0, 0, 0),
                                    new System.DateTime(2014, 5, 5, 0, 0, 0, 0),
                                    new System.DateTime(2014, 5, 4, 0, 0, 0, 0),
                                    new System.DateTime(2014, 5, 15, 0, 0, 0, 0),
                                    new System.DateTime(2014, 5, 18, 0, 0, 0, 0)};
Но если уже сделать так
C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
foreach (DataGridViewRow x in dataGridView1.Rows) 
            {
                try
                {
                    if (x.Cells[0].Value.ToString() != "")
                    {
                        DateTime d = new DateTime();
                        DateTime.TryParse(x.Cells[0].Value.ToString(), out d); 
 
                 this.monthCalendar1.AnnuallyBoldedDates =
            new System.DateTime[] { d};
                    }
                }
                catch
                {}
            }
То уже не работает.
0
Заблокирован
01.06.2014, 18:39
malta87, сделайте скриншот дгв, чтобы я увидел как у вас даты написаны.
0
8 / 8 / 6
Регистрация: 25.12.2013
Сообщений: 192
01.06.2014, 19:59  [ТС]
Моя программа считывает txt файлы в папке и заполняет именами(без расширения) дгв. Так что в столбце получается вот что например: 01.06.2014 02.06.2014 и т.д.
0
8 / 8 / 6
Регистрация: 25.12.2013
Сообщений: 192
01.06.2014, 20:02  [ТС]
ДГВ
Изображения
 
0
Заблокирован
01.06.2014, 20:49
Лучший ответ Сообщение было отмечено malta87 как решение

Решение

malta87, вот так будет выделять:

C#
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
List<DateTime> t = new List<DateTime>();
//замените тут с dataGridView3.Rows на то дгв, которое у вас.
            foreach (DataGridViewRow x in dataGridView3.Rows)
            {
                try
                {
                    if (!String.IsNullOrEmpty(x.Cells[0].Value.ToString()))
                    {
                        DateTime d = new DateTime();
                        DateTime.TryParse(x.Cells[0].Value.ToString(), out d);
                        t.Add(d);
                    }
                }
                catch (Exception ex)
                { MessageBox.Show(ex.Message); }
            }
            monthCalendar1.BoldedDates = t.ToArray();
Миниатюры
Подсветка даты в monthCalendar  
0
8 / 8 / 6
Регистрация: 25.12.2013
Сообщений: 192
01.06.2014, 20:58  [ТС]
Ev_Hyper, Спасибо большое. Ну тогда в первой версии своей ПО будет выделение жирным шрифтом, а потом может быть научусь выделять цветом
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
01.06.2014, 20:58
Помогаю со студенческими работами здесь

Поиск даты в MonthCalendar
Добрый день, есть компонент Edit и MonthCalendar, можно ли при вводе в Edit даты в MonthCalendar находилась эта дата и закрашивалась...

Разные Даты из MonthCalendar в RichTextBox
Здравствуйте,добавление дат из monthcalendar в разные места текста в richtextbox ,сам могу добавить из monthcalendar только в начале...

Сравнение при выборе даты в monthCalendar
Извините за глупость(я только начинаю изучать C#) на работе дали задание написать программу что бы показывала дни рождения сотрудников. ...

MonthCalendar - выделение нужной даты жирным шрифтом
Такая проблема,решил сделать календарь. Посмотрел в интернете,есть метод AddBoldedDate,который выделяет нужные даты жирным шрифтом. Но при...

MonthCalendar - выделение выбранной даты жирным шрифтом
Добрый вечер форумчане не могу разобраться с элементом MonthCalendar а точней как реализовать программное заполнение массива ну скажем...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
Загрузка PNG-файла с альфа-каналом с помощью библиотеки SDL3_image на Android
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
влияние грибов на сукцессию
anaschu 26.01.2026
Бифуркационные изменения массы гриба происходят тогда, когда мы уменьшаем массу компоста в 10 раз, а скорость прироста биомассы уменьшаем в три раза. Скорость прироста биомассы может уменьшаться за. . .
Воспроизведение звукового файла с помощью SDL3_mixer при касании экрана Android
8Observer8 26.01.2026
Содержание блога SDL3_mixer - это библиотека я для воспроизведения аудио. В отличие от инструкции по добавлению текста код по проигрыванию звука уже содержится в шаблоне примера. Нужно только. . .
Установка Android SDK, NDK, JDK, CMake и т.д.
8Observer8 25.01.2026
Содержание блога Перейдите по ссылке: https:/ / developer. android. com/ studio и в самом низу страницы кликните по архиву "commandlinetools-win-xxxxxx_latest. zip" Извлеките архив и вы увидите. . .
Вывод текста со шрифтом TTF на Android с помощью библиотеки SDL3_ttf
8Observer8 25.01.2026
Содержание блога Если у вас не установлены Android SDK, NDK, JDK, и т. д. то сделайте это по следующей инструкции: Установка Android SDK, NDK, JDK, CMake и т. д. Сборка примера Скачайте. . .
Использование SDL3-callbacks вместо функции main() на Android, Desktop и WebAssembly
8Observer8 24.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru