Самый быстрый способ отобразить полный календарь - PullRequest
0 голосов
/ 25 мая 2010

Мне нужно отобразить полный календарь (12 месяцев, 31 ~ дней / месяц) на экране. В настоящее время я использую сетку из 12 столбцов, каждый столбец которой заполнен панелью стека «месяцы».
Каждая «месячная» стековая панель заполняется 31 (или менее) дневными представлениями.
Каждое дневное представление состоит из DockPanel с тремя элементами управления:

  • текстовое поле для отображения дневной буквы
  • текстовый блок для отображения номера дня
  • текстовый блок для отображения короткого сообщения

Конечно, при попытке изменить размер окна представления сводятся на нет.

Есть ли полезный прием, позволяющий быстро отображать множество текстовых блоков?

Ответы [ 3 ]

3 голосов
/ 25 мая 2010

Вы смотрели на Управление календарем ? Он является частью WPF Toolkit, если вы используете .NET 3.5 или более раннюю версию и включен как часть .NET 4

1 голос
/ 12 июля 2010

Самый быстрый способ - создать подкласс FrameworkElement (или, может быть, даже Visual), переопределить OnRender и нарисовать весь календарь в коде.

Но тогда вам придется отказаться от всех приятных шаблонов функций, прочитайте эту статью сначала.

0 голосов
/ 12 июля 2010

На самом деле я пытался создать пользовательский интерфейс календаря с нуля, чтобы контролировать любую его часть. Я сделал это, используя сетку с 12 столбцами и 31 строкой, как ItemsPanel ItemsControl. В соответствии с данными (дневная коллекция), привязанными к ItemsControl, сетка помещает шаблон данных в правую пару столбец / строка.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...