2016-03-23 18 views
1

10 saniye gibi bazı rasgele zamanları nasıl oluşturabilirim. Düğmeye tıkladığımda, yeni düğmeyi görmek için 10 saniye beklemem gerekiyor? Sorum şu ki bu rastgele zamanı nasıl oluşturabilirim? Ve bu benim kod Rasgele zaman 0 ile 20 saniye arasında mı?

Xaml

olmak zorunda:

public void randomButton() 
     {    
      newBtn.Content = "A New Button"; 
      Random myRandom = new Random(); 
      int rand1 = myRandom.Next(0, 400); 
      int rand2 = myRandom.Next(0, 400); 
      panelButton.Children.Add(newBtn); 

      Canvas.SetLeft(newBtn, rand1); 
      Canvas.SetTop(newBtn, rand2); 

      iRandom = row.Next(-350, 350); 
      newBtn.Click += newBtn_Click; 
      newBtn.Margin = new Thickness(iRandom, iRandom, 0, 0); 
     } 

     private void newBtn_Click(object sender, RoutedEventArgs e) 
     { 
      *// here i want the random time to happen!* 
      iRandom = row.Next(-350, 350); 
      newBtn.Margin = new Thickness(iRandom, iRandom, 0, 0); 
     } 

bana yardım edin, gerçekten bilmek istiyorum! Kötü Türkçem için özür dilerim!

cevap

0
private async void newBtn_Click(object sender, RoutedEventArgs e) 
{ 
    // here i want the random time to happen! 
    await Task.Delay(5000); // 5 sec, make it random 

    iRandom = row.Next(-350, 350); 
    newBtn.Margin = new Thickness(iRandom, iRandom, 0, 0); 
} 
+0

Ancak nasıl rastgele bir zaman verebilirim? – Xaml

+0

@Xaml - Bu, 2000 ile 10000 milisaniye arasında rastgele bir gecikme sağlar: 'var rnd = new Random(); var delay = rnd.Sonra (5000, 10001); ' –

İlgili konular