`
terryfeng
  • 浏览: 504758 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Silverlight 客户端本地消息通讯

阅读更多

在Silverlight 3 中添加了客户端不同应用程序之间的通信机制,当一台电脑上同时运行多个Silverlight 应用程序的时候,本地消息通讯可以在不同的Silverlight之间创建一个消息通道,有点像是一个Socket链接,一方在监听,一方发送。

发送端

public partial class LM_Sender : UserControl
    {
        //定¨义?本?地?消?息¢发¢送í对?象ó,?这a个?最?关?键ü,?接ó收?方?和í发¢送í方?的?实μ例y名?必?须?一?样ù才?行D,?好?比èMQ的?通¨道à一?样ù
        private LocalMessageSender msgSender = new LocalMessageSender("terryfeng");
        public LM_Sender()
        {
            InitializeComponent();
            this.Loaded += new RoutedEventHandler(LM_Sender_Loaded);
        }

        void LM_Sender_Loaded(object sender, RoutedEventArgs e)
        {
            //提á前°加ó载?,?创′建¨消?息¢发¢送í完ê成é的?事?件t处|理í
            msgSender.SendCompleted +=
                new EventHandler<SendCompletedEventArgs>(msgSender_SendCompleted);
        }

        private void btnSent_Click(object sender, RoutedEventArgs e)
        {
            //发¢送í消?息¢
            msgSender.SendAsync(tbInput.Text);
        }

        void msgSender_SendCompleted(object sender, SendCompletedEventArgs e)
        {
            //显?示?回?复′的?消?息¢
            MessageBox.Show(e.Response);
        }
    }

 

接收端

public partial class LM_Rec : UserControl
 {
     public LM_Rec()
     {
         InitializeComponent();
         this.Loaded += new RoutedEventHandler(LM_Rec_Loaded);
     }

     void LM_Rec_Loaded(object sender, RoutedEventArgs e)
     {
         //创′建¨接ó收?消?息¢对?象ó
         LocalMessageReceiver msgRec = new LocalMessageReceiver("terryfeng");
         //创′建¨接ó收?消?息¢的?事?件t处|理í
         msgRec.MessageReceived +=
             new EventHandler<MessageReceivedEventArgs>(msgRec_MessageReceived);
         //开a始?侦ì听y
         msgRec.Listen();
     }

     void msgRec_MessageReceived(object sender, MessageReceivedEventArgs e)
     {
         //显?示?收?到?的?消?息¢
         tbkRec.Text = e.Message;
         //反′馈?消?息¢给?发¢送í者?
         e.Response = "我ò收?到?消?息¢了?,?谢?谢?!?";
     }
 }
分享到:
评论

相关推荐

    WCF RIA 服务 (二十五)-- Silverlight 客户端 6 源代码

    在本篇中,我们将深入探讨WCF RIA(Windows Communication Foundation Rich Internet Application)服务与Silverlight客户端6的源代码交互。WCF RIA服务是一种强大的技术,它允许开发者构建跨域分布式应用程序,尤其...

    WCF RIA 服务 (二十六)-- Silverlight 客户端 7 源代码

    **WCF RIA 服务与Silverlight客户端:深入解析** 在本文中,我们将详细探讨WCF RIA(Windows Communication Foundation Rich Internet Application)服务在Silverlight客户端应用中的第七个源代码实例。WCF RIA服务...

    WCF RIA 服务 (二十七)-- Silverlight 客户端 8 源代码

    在本篇中,我们将深入探讨WCF RIA(Rich Internet Application)服务,特别是与Silverlight客户端8相关的源代码。WCF RIA服务是微软提供的一种技术,它允许开发者构建跨越服务器和客户端的数据驱动应用程序,而...

    Silverlight客户端获取服务器文件路径或文件流,并直接显示图片

    在本案例中,我们讨论的主题是如何在Silverlight客户端获取服务器上的文件路径或文件流,并直接在客户端显示图片。 首先,我们需要了解Silverlight的安全模型。由于安全限制,Silverlight应用程序不能直接访问...

    WCF RIA 服务 (二十四)-- Silverlight 客户端 5 源代码

    在本篇中,我们将深入探讨WCF RIA(Windows Communication Foundation Rich Internet Application)服务,特别是针对Silverlight客户端5的应用。WCF RIA服务是微软提供的一种技术,它旨在简化跨层应用程序开发,允许...

    IM聊天系统源码(C#),支持桌面客户端和Silverlight客户端

    而Silverlight客户端则是一种浏览器插件技术,它使得聊天系统可以跨平台运行,不仅限于Windows,还可以在支持Silverlight的其他操作系统上使用,如Mac OS。Silverlight提供了丰富的图形和多媒体功能,使得聊天界面更...

    Silverlight客户端图层控制范例

    在本示例中,"Silverlight客户端图层控制范例"是基于SuperMap iClient 6R for Silverlight技术实现的。SuperMap iClient是一款强大的GIS(地理信息系统)客户端组件,它提供了丰富的地图操作和数据处理功能,适用于...

    silverlight与wcf互相通讯

    然而,通过WCF,我们可以打破这一限制,使Silverlight客户端能够调用服务器端的服务,实现远程数据访问和业务逻辑处理。 首先,为了在Silverlight中引用WCF服务,我们需要在服务器端创建一个WCF服务。这涉及到定义...

    Silverlight WCF RIA服务(二十二)Silverlight 客户端 3 源代码

    在本篇中,我们将深入探讨Silverlight客户端与WCF RIA服务的交互,特别是通过查看提供的"ExampleSilverlightApp"源代码来理解这一过程。Silverlight是微软开发的一个富互联网应用程序(RIA)平台,它允许开发者创建...

    SuperMap iClient 6R for Silverlight客户端专题图演示

    总的来说,SuperMap iClient 6R for Silverlight客户端专题图演示展示了如何利用该平台实现高效、互动的GIS应用,特别是针对大规模数据的动态专题图绘制和聚类分析。通过这样的技术,开发者可以构建出更直观、更具...

    Silverlight 客户端分页示例

    今天,很多的商业应用是使用WCF RIA Services构成的(这并不奇怪,它确实...现在我们可用的集合可以自动跟踪你的DomainContext,你可以添加过滤、排序甚至分组条件,还提供了一个客户端可分页的DomainCollectionView。

    Silverlight操作客户端注册表

    包含内容: 1.SilverlightOOB模式下将其加入客户端的开机自动启动项; 2.OOB模式下从开机自动启动项中移除; 3.OOB模式下遍历客户端数据库; 4.TXT、XML、数据库等方式...5.Silverlight通过RIA获取服务器的已安装软件。

    Silverlight浏览器客户端运行插件

    **Silverlight浏览器客户端运行插件** Silverlight是微软公司推出的一种富互联网应用程序(RIA)平台,主要用于增强网页的多媒体体验。它与Adobe的Flash类似,为Web开发人员提供了一种在浏览器中创建交互式、动画...

    SuperMap iClient 6R for Silverlight 客户端专题图演示

    基于SuperMap iClient for Silverlight构建的指标对比系统主要采用图表控件Visifire,通过饼状和圈状图清晰形象的展现了不同区域各指标的分布和对比图,使对比结果一目了然。

    SilverLight 2.0 和Sockets通讯视频教程

    SilverLight 2.0 和Sockets通讯视频教程 SilverLight 2.0 和Sockets通讯视频教程 SilverLight 2.0 和Sockets通讯视频教程 SilverLight 2.0 和Sockets通讯视频教程

    silverlight客户端 从 ria 服务中 动态获取数据

    从RIA服务中,SL客户端动态获取数据。首先,请安装 AdventureWorks2008R2,该文件下载地址:...

    SilverLight Socket 异步通讯实例

    在"SilverLight Socket 异步通讯实例"中,我们关注的是如何在Silverlight应用中利用Socket进行异步通信。异步通信是关键,因为它使得用户界面在等待服务器响应时不会被阻塞,从而提供更好的用户体验。在Silverlight...

    silverlight 4.0客户端导出execl数据

    在Silverlight 4.0版本中,微软增强了对Excel数据导出的功能,使得在客户端直接处理和导出Excel数据成为可能,这极大地扩展了Silverlight的应用场景。 Silverlight 4.0的Excel数据导出功能主要是通过使用Open XML ...

    silverlight中导入和导出Excel

    一种常见的方法是利用WCF(Windows Communication Foundation)服务作为桥梁,将数据在Silverlight客户端与服务器之间传输。 **导入Excel到Silverlight** 1. **创建WCF服务**:在服务器端,创建一个WCF服务,该...

    基于Silverlight实现捕捉视频,截图保存到本地的源码例子

    5. 数据传输:理解如何在Silverlight客户端和Web服务器之间传输数据,例如将截图的二进制数据发送到服务器,再由服务器保存到本地文件。 总的来说,这个源码例子提供了一个学习Silverlight视频处理和交互的好机会,...

Global site tag (gtag.js) - Google Analytics