2014-11-21 10 views
0

У меня есть проект WPF, в котором у меня есть несколько окон WPF.WPF textblock не обновляет

В одном из окна, я назвал его window2 У меня есть текстовый блок следующим образом:

<TextBlock Grid.Row="0" Name="motorTitle" Text="this is test" Visibility="Visible" Foreground="Red" Grid.Column="0" FontSize="20" HorizontalAlignment="Center"></TextBlock> 

В коде позади Window2 файла, у меня есть следующие:

public string text = ".";  
    private void timer_Tick(object sender, EventArgs e) 
{ 
    this.motorTitle.Text = text; 
} 

В другое окно WPF Я назвал его MainWindow Я пытаюсь обновить текст Window2, сделав это

Window2.text = "my text"; 

S o, когда я запускаю в режиме отладки, я вижу текстовую переменную Window2, измененную на «мой текст», но она не обновляется в текстовом блоке на дисплее.?

Я попробовал & улов, но ничего не найдено.

Любая идея?

+2

Показать код, который создает и запускает таймер. Кроме того, вы установили точку останова в timer_Tick, чтобы убедиться, что она вызывается? – user469104

+0

код, который запускает таймер, это public DispatcherTimer timer = new DispatcherTimer(); таймер.Interval = TimeSpan.FromMilliseconds (300); таймер.Tick + = timer_Tick; timer.Start(); и да, точка останова показывает данные в «тексте». – CB4

+0

Вы должны отлаживать свой код: происходит ли событие таймера? Затем скажите, что такое 'Window2': это экземпляр? Вы уверены, что это тот же самый экземпляр (новички часто создают экземпляр 'new' вместо того, чтобы использовать правильно показанное окно)? Кроме того, я бы использовал 'x: Name' вместо' Name', не спрашивайте меня [почему] (http://stackoverflow.com/q/589874/1997232). – Sinatr

ответ

Смежные вопросы