Class StrongReferenceMessenger
- Namespace
- CommunityToolkit.Mvvm.Messaging
- Assembly
- CommunityToolkit.Mvvm.dll
A class providing a reference implementation for the IMessenger interface.
public sealed class StrongReferenceMessenger : IMessenger
- Inheritance
-
StrongReferenceMessenger
- Implements
- Inherited Members
- Extension Methods
Remarks
This IMessenger implementation uses strong references to track the registered recipients, so it is necessary to manually unregister them when they're no longer needed.
Constructors
StrongReferenceMessenger()
public StrongReferenceMessenger()
Properties
Default
Gets the default StrongReferenceMessenger instance.
public static StrongReferenceMessenger Default { get; }
Property Value
Methods
IsRegistered<TMessage, TToken>(object, TToken)
public bool IsRegistered<TMessage, TToken>(object recipient, TToken token) where TMessage : class where TToken : IEquatable<TToken>
Parameters
recipient
objecttoken
TToken
Returns
Type Parameters
TMessage
TToken
Register<TRecipient, TMessage, TToken>(TRecipient, TToken, MessageHandler<TRecipient, TMessage>)
public void Register<TRecipient, TMessage, TToken>(TRecipient recipient, TToken token, MessageHandler<TRecipient, TMessage> handler) where TRecipient : class where TMessage : class where TToken : IEquatable<TToken>
Parameters
recipient
TRecipienttoken
TTokenhandler
MessageHandler<TRecipient, TMessage>
Type Parameters
TRecipient
TMessage
TToken
Reset()
public void Reset()
Send<TMessage, TToken>(TMessage, TToken)
public TMessage Send<TMessage, TToken>(TMessage message, TToken token) where TMessage : class where TToken : IEquatable<TToken>
Parameters
message
TMessagetoken
TToken
Returns
- TMessage
Type Parameters
TMessage
TToken
UnregisterAll(object)
public void UnregisterAll(object recipient)
Parameters
recipient
object
UnregisterAll<TToken>(object, TToken)
public void UnregisterAll<TToken>(object recipient, TToken token) where TToken : IEquatable<TToken>
Parameters
recipient
objecttoken
TToken
Type Parameters
TToken
Unregister<TMessage, TToken>(object, TToken)
public void Unregister<TMessage, TToken>(object recipient, TToken token) where TMessage : class where TToken : IEquatable<TToken>
Parameters
recipient
objecttoken
TToken
Type Parameters
TMessage
TToken