2015-11-23 62 views
4

我創建了產生一個隨機數類一個TextBlock:生成一個隨機數,並把它在

public class DataGenerator 
{ 
    public void RandomHRValue() 
    { 
     Random random = new Random(); 
     int RandomNumber = random.Next(0, 100); 
    } 
} 

然後我創建了一個XAML文件,並將Grid中的以下內容:

<TextBlock Name="a" Text="" Width="196" HorizontalAlignment="Center" Margin="183,158,138,56"/> 

我還沒有做任何事情xaml.cs文件。我會如何將每20秒將一個隨機數字加入TextBlock

回答

4

您可以使用DispatcherTimer這樣的:

public MainWindow() 
{ 
    InitializeComponent(); 
    DispatcherTimer timer = new DispatcherTimer(); 
    timer.Interval = new TimeSpan(0, 0, 20); 
    timer.Start(); 
    timer.Tick += timer_Tick; 
} 

void timer_Tick(object sender, EventArgs e) 
{ 
    DataGenerator dg = new DataGenerator(); 
    a.Text = dg.RandomHRValue().ToString(); 
} 

而且改變方法類型爲int:

public int RandomHRValue() 
{ 
     Random random = new Random(); 
     int RandomNumber = random.Next(0, 100); 
     return RandomNumber; 
} 
0

我,由於我的低信譽響應對方的回答不做評論,但,使用以下方法會不會更好?

 InitializeComponent(); 
     DispatcherTimer timer = new DispatcherTimer {Interval = new TimeSpan(0, 0, 5)}; 
     timer.Start(); 
     timer.Tick += timer_Tick; 

如果這是錯誤的,可你說爲什麼,所以我自己,可以得到一些反饋(順便說一句OP和我一起在這方面的工作)

+0

@ user2946329這個怎麼樣? – Badja

+0

這沒有錯。是的,使用對象初始值設定項可能會更好。如果您不能發表評論,您可以通過編輯我的答案來提出建議,所以如果有幫助,帖子的所有者或評論者會批准您的建議。這是這種情況下的正確方法。 :) –