LocalMessageReceiver Class


Represents the receiving end of a local messaging channel between two Silverlight-based applications.


Namespace:  System.Windows.Messaging
Assembly:  System.Windows (in System.Windows.dll)

public sealed class LocalMessageReceiver : IDisposable

The LocalMessageReceiver type exposes the following members.

Public methodLocalMessageReceiver(String)Initializes a new instance of the LocalMessageReceiver class and configures it with the specified name.
Public methodLocalMessageReceiver(String, ReceiverNameScope, IEnumerable<String>)Initializes a new instance of the LocalMessageReceiver class and configures it with the specified name, namescope requirement, and allowed sender domains.

Public propertyAllowedSenderDomainsGets the domains that the receiver can receive messages from.
Public propertyDisableSenderTrustCheckGets or sets a value that indicates whether the receiver can receive messages from a sender with a different Protected Mode setting.
Public propertyNameScopeGets a value that indicates whether the ReceiverName is scoped to the global namescope or to the receiver's specific domain.
Public propertyReceiverNameGets the name of the receiver.

Public methodDisposeStops the receiver from receiving messages and releases all resources used by the receiver.
Public methodEquals(Object)Determines whether the specified Object is equal to the current Object. (Inherited from Object.)
Protected methodFinalizeAllows an object to try to free resources and perform other cleanup operations before the Object is reclaimed by garbage collection. (Inherited from Object.)
Public methodGetHashCodeServes as a hash function for a particular type. (Inherited from Object.)
Public methodGetTypeGets the Type of the current instance. (Inherited from Object.)
Public methodListenStarts listening for messages from a LocalMessageSender.
Protected methodMemberwiseCloneCreates a shallow copy of the current Object. (Inherited from Object.)
Public methodToStringReturns a string that represents the current object. (Inherited from Object.)

Public eventMessageReceivedOccurs when a message is received from a LocalMessageSender.

Public fieldStatic memberAnyDomainA value that represents any domain.

A LocalMessageReceiver object can receive messages from a LocalMessageSender object in a different Silverlight-based application running on the same computer. For information about using these classes, see Communication Between Local Silverlight-Based Applications.

The following code example demonstrates how to use this class. This example is part of a larger example available in How to: Implement Communication Between Local Silverlight-Based Applications.

using System;
using System.Windows.Controls;
using System.Windows.Messaging;

namespace ReceivingApplication
    public partial class Receiver : UserControl
        public Receiver()

            LocalMessageReceiver messageReceiver =
                new LocalMessageReceiver("receiver",
                ReceiverNameScope.Global, LocalMessageReceiver.AnyDomain);
            messageReceiver.MessageReceived += messageReceiver_MessageReceived;
            catch (ListenFailedException)
                output.Text = "Cannot receive messages." + Environment.NewLine +
                    "There is already a receiver with the name 'receiver'.";

        private void messageReceiver_MessageReceived(
            object sender, MessageReceivedEventArgs e)
            e.Response = "response to " + e.Message;
            output.Text =
                "Message: " + e.Message + Environment.NewLine +
                "NameScope: " + e.NameScope + Environment.NewLine +
                "ReceiverName: " + e.ReceiverName + Environment.NewLine +
                "SenderDomain: " + e.SenderDomain + Environment.NewLine +
                "Response: " + e.Response;


Supported in: 5, 4, 3

For a list of the operating systems and browsers that are supported by Silverlight, see Supported Operating Systems and Browsers.

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Community Additions