Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public partial class MainWindow : Window
- {
- public MainWindow()
- {
- InitializeComponent();
- }
- private void Button_Click(object sender, RoutedEventArgs e)
- {
- var yoba = new Yoba();
- yoba.YobaSpeaks += YobaOnYobaSpeaks;
- }
- private void YobaOnYobaSpeaks(object sender, YobaEventArgs yobaEventArgs)
- {
- Dispatcher.Invoke(() => tb.Text += yobaEventArgs.NewMessage + Environment.NewLine);
- }
- }
- #######################
- public class YobaEventArgs : EventArgs
- {
- public string NewMessage { get; set; }
- public YobaEventArgs(string message)
- {
- NewMessage = message;
- }
- }
- public class Yoba
- {
- private Timer timer;
- public event EventHandler<YobaEventArgs> YobaSpeaks;
- protected virtual void OnYobaSpeaks(YobaEventArgs e)
- {
- var handler = YobaSpeaks;
- if (handler != null) handler(this, e);
- }
- public Yoba()
- {
- timer = new Timer(1000);
- timer.Elapsed += TimerOnElapsed;
- timer.Enabled = true;
- }
- private void TimerOnElapsed(object sender, ElapsedEventArgs elapsedEventArgs)
- {
- var message = "yoba, eto ti?";
- OnYobaSpeaks(new YobaEventArgs(message));
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment