Проблемы с отрисовкой Canvas в потоке
От: montegava  
Дата: 01.04.11 10:28
Оценка:
Уважаемые форумчане.

Есть такая задача.
Необходиом на канве перемещать линию.

Положение линии определяется как процент выполнения фоновой задачи (такой себе прогрессбар на канве).

Проблема в том, что перерисовка не происходит.

В чем может быть проблема?

PS. Приложение WPF

Ниже код, как я это делаю

Создаю таймер

             System.Windows.Threading.DispatcherTimer dispatcherTimer = new System.Windows.Threading.DispatcherTimer();
             dispatcherTimer.Tick += new EventHandler(dispatcherTimer_Tick);
             dispatcherTimer.Interval = new TimeSpan(0, 0, 1);
             dispatcherTimer.Start();


Через каждую секунду, обработчик таймера обращается к переменной класса (m_Car.m_Position).
Данное значение меняется в потоке класса m_Car.

   private void dispatcherTimer_Tick(object sender, EventArgs e)
        {
            int x = m_Car.m_Position;
            LinePosition.X1 = x; 
            LinePosition.X2 = x;   
        }


Здесь LinePosition — объект-линия, который добавляется при старте на канву в начальную позицию

 private Line LinePosition;





01.04.11 14:44: Перенесено из '.NET'
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.