• Главная
  • Оглавление
  • Обратная связь
  • Лента RSS
  • Правила
Что здесь уже нашли

Залепа №6. Вечный календарь и пляска с бубном.

17 декабря 2007, 07:34

Автор будет очень признателен, если Вы кликнете по одной из белых ссылок выше.
Вам это ничего не стоит, а автору сайта будет приятно ;)




Ситуация:

Есть некоторое событие, достаточно жестко привязанное к конкретным датам. Например поездки с проверками некоего крутого начальника. И этому начальнику надо знать, в какие поездки брать с собой помощника, а в какие нет. Сознаюсь, задача слегка синтетическая, но поразмыслив немного, вы сами найдете кучу вполне реальных задач, сводящихся к этой.

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

Кроме всех "обычных" прелестей, эта мега-кульная штука умеет еще и метить дни. Причем метки можно ставить аж трех разных типов, включая ежемесячные события. К слову сказать, диапазон у этого календаря тоже удовлетворит любого - он умеет работать с датами до 9999 года, так что очередная "проблема 3000" нам уже не грозит. Можем писать софт даже не на века, а на тысячелетия! Действительно огромное достижение инженерной мысли.

Ну вы уже конечно догадались, что и здесь есть все то же пресловутое "НО".

На этот раз это "НО" вылилось в то, что все эти разнообразные отметки (напомню, что их аж три разных типа) на экране выглядят абсолютно одинаково. Причем не просто одинаково, а написаны тем же шрифтом, что и обычные даты, только слегка жирненьким.

Майкрософт напихало в этот контрол кучу свойств и методов, из которых на практике используется едва ли 5%, но пожалело ввести хотя бы одну переменную, чтобы задать цвет отмеченных дат. Жмоты! Правда, в вышеописанной задаче, одним цветом мы бы все равно не обошлись, но было бы хоть что-то. А так нет. :(

Теперь финальный аккорд.

Контрол MonthCalendar (кстати, как и многие другие в .NET) не имеет обработчика для собственного рисования дат. Этим МС вбило последний гвоздь в нашу попытку с помощью их мега-библиотеки решить поставленную (к слову сказать достаточно простую) задачу, по созданию удобного интерфейса.

Выход только один - писать свой контрол, со всеми вытекающими. :(

Оставить комментарий


Все заметки категории "Кривизна платформы .NET и проблемы C#"

Page: 21 22 23 24 25 26 27 28 29 30
Fast: 10 20 30

Календарь

декабрь, 2007
пн вт ср чт пт сб вс
          1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
31            

Меню

  • Главная страница
  • Оглавление блога
  • Лента новостей
  • Обратная связь
  • Правила блога

Анонсы по темам

  • Все посты блога
  • С миру по нитке
  • Мысли вслух
  • Графика и фото
  • Кривизна платформы .NET
  • Грамотные интерфейсы
  • WEB-программирование
  • FlatCMS - шустрая и гибкая
  • Доработки Lasto-блога

Категории

  • Все посты по порядку
  • С миру по нитке
  • Графика и фото
  • Кривизна платформы .NET
  • Грамотные интерфейсы
  • WEB-программирование
  • FlatCMS - шустрая и гибкая
  • Доработки Lasto-блога

Сервисы

  • Поиск по блогу
  • Поиск по всему сайту
  • Шпионское досье

Реклама


Стоимость сайта

Мой вебсайт стоит 865 404,18 руб

Статистика

    Widgetize!
  • Время работы: 0,01977 сек.
  • Память: 7 424 кБт
  • Статистика привратника
Copyright FIT-Media.com, © 2007-2010
Главная | Общее оглавление | Обратная связь | Правила блога | Лента RSS