Добавить шкалу времени к столбцам в сетке - PullRequest
1 голос
/ 26 декабря 2011

Я разрабатываю приложение, которое создает временную шкалу во время выполнения.Поэтому я создал сетку (не сетку данных) и хочу поместить некоторые метки времени в равные промежутки (60 пикселей / час - 1 пиксель / минуту).

Я уже знаю, как создавать столбцы программно:

public void ColumnCreator(double totalInterval, double divPattern)
{
    int divisionPattern = Convert.ToInt16(divPattern);
    if (divisionPattern < totalInterval)
    {
        for (int i = 0; i < totalInterval; i += divisionPattern)
        {
            internalGrid.ColumnDefinitions.Add(new ColumnDefinition() { 
                Width = new GridLength(divisionPattern, GridUnitType.Pixel) });
        }
    }
}

но эти строки не синхронизированы.У кого-нибудь есть решение для меня?

Заранее спасибо 8 -)

1 Ответ

1 голос
/ 27 декабря 2011

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

Используйте от Canvas до отрисовку материала на нем.Используйте Shape и Path для рисования.Для достижения разумной производительности в пользовательском интерфейсе в реальном времени вам нужно прочитать по крайней мере следующую ссылку: http://msdn.microsoft.com/en-us/library/ms747393.aspx

Не используйте Pixels, но предоставляется WPF Units, который является независимым от устройства способом объявления измерениячего-то в WPF.Таким образом, ваш чертеж будет сохранять пропорции на разных мониторах screen sizes и dpi.

...