-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMessageListener.cs
69 lines (61 loc) · 1.71 KB
/
MessageListener.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Diagnostics;
namespace SplashDemo
{
/// <summary>
/// Message listener, singlton pattern.
/// Inherit from DependencyObject to implement DataBinding.
/// </summary>
public class MessageListener : DependencyObject
{
/// <summary>
///
/// </summary>
private static MessageListener mInstance;
/// <summary>
///
/// </summary>
private MessageListener ( )
{
}
/// <summary>
/// Get MessageListener instance
/// </summary>
public static MessageListener Instance
{
get
{
if ( mInstance == null )
mInstance = new MessageListener ( );
return mInstance;
}
}
/// <summary>
///
/// </summary>
/// <param name="message"></param>
public void ReceiveMessage ( string message )
{
Message = message;
Debug.WriteLine ( Message );
DispatcherHelper.DoEvents ( );
}
/// <summary>
/// Get or set received message
/// </summary>
public string Message
{
get { return ( string ) GetValue ( MessageProperty ); }
set { SetValue ( MessageProperty, value ); }
}
/// <summary>
///
/// </summary>
public static readonly DependencyProperty MessageProperty =
DependencyProperty.Register ( "Message", typeof ( string ), typeof ( MessageListener ), new UIPropertyMetadata ( null ) );
}
}