Guest User

Untitled

a guest
Jul 13th, 2014
26
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 1.10 KB | None | 0 0
  1. public partial class MainWindow : Window
  2. {
  3.     public MainWindow()
  4.     {
  5.         InitializeComponent();
  6.     }
  7.  
  8.     private void Button_Click(object sender, RoutedEventArgs e)
  9.     {
  10.         var yoba = new Yoba();
  11.         yoba.YobaSpeaks += YobaOnYobaSpeaks;
  12.     }
  13.  
  14.     private void YobaOnYobaSpeaks(object sender, YobaEventArgs yobaEventArgs)
  15.     {
  16.         Dispatcher.Invoke(() => tb.Text += yobaEventArgs.NewMessage + Environment.NewLine);
  17.     }
  18. }
  19.  
  20. #######################
  21.  
  22. public class YobaEventArgs : EventArgs
  23. {
  24.     public string NewMessage { get; set; }
  25.  
  26.     public YobaEventArgs(string message)
  27.     {
  28.         NewMessage = message;
  29.     }
  30. }
  31.  
  32. public class Yoba
  33. {
  34.     private Timer timer;
  35.  
  36.     public event EventHandler<YobaEventArgs> YobaSpeaks;
  37.  
  38.     protected virtual void OnYobaSpeaks(YobaEventArgs e)
  39.     {
  40.         var handler = YobaSpeaks;
  41.         if (handler != null) handler(this, e);
  42.     }
  43.  
  44.     public Yoba()
  45.     {
  46.         timer = new Timer(1000);
  47.         timer.Elapsed += TimerOnElapsed;
  48.         timer.Enabled = true;
  49.     }
  50.  
  51.     private void TimerOnElapsed(object sender, ElapsedEventArgs elapsedEventArgs)
  52.     {
  53.         var message = "yoba, eto ti?";
  54.         OnYobaSpeaks(new YobaEventArgs(message));
  55.     }
  56. }
Advertisement
Add Comment
Please, Sign In to add comment