Was this page helpful?
Your feedback about this content is important. Let us know what you think.
Additional feedback?
1500 characters remaining
LocalMessageSender Constructor (String, String)
Collapse the table of content
Expand the table of content

LocalMessageSender Constructor (String, String)

Silverlight

Initializes a new instance of the LocalMessageSender class and configures it to send messages to the receiver with the specified name and domain.

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

'Declaration
Public Sub New ( _
	receiverName As String, _
	receiverDomain As String _
)

Parameters

receiverName
Type: System.String
The ReceiverName property value of the LocalMessageReceiver that this sender will send messages to.
receiverDomain
Type: System.String
The domain of the LocalMessageReceiver that this sender will send messages to, or Global if the receiver is not scoped to a domain.

ExceptionCondition
ArgumentNullException

receiverName is Nothing.

-or-

receiverDomain is Nothing.

ArgumentException

receiverName is longer than 256 characters.

-or-

receiverDomain is longer than 256 characters.

-or-

receiverDomain contains one or more invalid characters ("," and ":").

This constructor enables you to initialize the ReceiverName and ReceiverDomain values.

For more information, see Communication Between Local Silverlight-Based Applications.

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


Imports System
Imports System.Windows
Imports System.Windows.Controls
Imports System.Windows.Messaging

Partial Public Class Sender
    Inherits UserControl

    Private messageSender As LocalMessageSender

    Public Sub New()

        InitializeComponent()
        UpdateButton()
        messageSender = New LocalMessageSender( _
            "receiver", LocalMessageSender.Global)
        AddHandler messageSender.SendCompleted, _
            AddressOf sender_SendCompleted
        SendMessage("message from Sender constructor")

    End Sub

    Private clickNumber As Integer = 1

    Private Sub UpdateButton()
        button.Content = "send message 'click " & clickNumber & "'"
    End Sub

    Private Sub Button_Click(ByVal sender As Object, _
        ByVal e As RoutedEventArgs)

        SendMessage("click " & clickNumber)
        clickNumber += 1
        UpdateButton()

    End Sub

    Private Const MAX_ATTEMPTS As Integer = 10000
    Private attempt As Integer = 1

    Private Sub SendMessage(ByVal message As String)
        messageSender.SendAsync(message, attempt)
    End Sub

    Private Sub sender_SendCompleted(ByVal sender As Object, _
        ByVal e As SendCompletedEventArgs)

        If e.Error IsNot Nothing Then

            LogError(e)
            attempt += 1
            If attempt > MAX_ATTEMPTS Then
                output.Text = "Could not send message."
                Return
            End If
            SendMessage(e.Message)
            Return

        End If

        output.Text = _
            "Message: " & e.Message & Environment.NewLine & _
            "Attempt " & CType(e.UserState, Integer) & _
            " completed." & Environment.NewLine & _
            "Response: " & e.Response & Environment.NewLine & _
            "ReceiverName: " & e.ReceiverName & Environment.NewLine & _
            "ReceiverDomain: " & e.ReceiverDomain

        ' Reset attempt counter.
        attempt = 1

    End Sub

    Private Sub LogError(ByVal e As SendCompletedEventArgs)
        System.Diagnostics.Debug.WriteLine( _
            "Attempt number {0}: {1}: {2}", CType(e.UserState, Integer), _
            e.Error.GetType().ToString(), e.Error.Message)
    End Sub

End Class


Silverlight

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.

Community Additions

ADD
Show:
© 2015 Microsoft