`
wyf
  • 浏览: 436868 次
  • 性别: Icon_minigender_1
  • 来自: 唐山
社区版块
存档分类
最新评论

SilverLight中调用自定义用户控件

阅读更多

1.在aspx页面中切换调用同一个SilverLight项目中的不同用户控件

 

1.1.       方法一

修改SilverLight项目启动文件App.xmlApplication_Startup事件

 private void Application_Startup(object sender, StartupEventArgs e)

        {

            if (!e.InitParams.ContainsKey("InitPage"))

            {

                this.RootVisual = new MainPage();

                return;

            }

            switch (e.InitParams["InitPage"])

            {

                case "SilverlightControl1":

                    this.RootVisual = new SilverlightControl1();

                    break;

                case "SilverlightControl2":

                    this.RootVisual = new SilverlightControl2();

                    break;

                default:

                    this.RootVisual = new MainPage();

                    break;

            }

 

        }



本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/manimanihome/archive/2009/08/29/4498244.aspx

 修改aspx页面

<div id="silverlightControlHost">

           <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%" >

                <param name="source" value="ClientBin/Binglang.SilverlightDemo19.xap"/>

                <param name="InitParams" value="InitPage=SilverlightControl1" />

                <param name="onerror" value="onSilverlightError" />

                <param name="background" value="white" />

                <param name="minRuntimeVersion" value="3.0.40624.0" />

                <param name="autoUpgrade" value="true" />

                <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=3.0.40624.0" style="text-decoration: none;">

                     <img src="http://go.microsoft.com/fwlink/?LinkId=108181" alt="获取 Microsoft Silverlight" style="border-style: none"/>

                </a>

           </object><iframe id="_sl_historyFrame" style='visibility:hidden;height:0;width:0;border:0px'></iframe></div>



本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/manimanihome/archive/2009/08/29/4498244.aspx

 1.2.      方法二

 

修改SilverLight项目启动文件App.xmlApplication_Startup事件

  private void Application_Startup(object sender, StartupEventArgs e)

        {

            if (!e.InitParams.ContainsKey("InitPage"))

            {

                this.RootVisual = new MainPage();

                return;

            }

 

            Assembly assembly = Assembly.GetExecutingAssembly();

            String rootName = String.Format("Binglang.SilverlightDemo19.{0}", e.InitParams["InitPage"]);

            UIElement rootVisual = assembly.CreateInstance(rootName) as UIElement;

            this.RootVisual = rootVisual;

 

        }



本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/manimanihome/archive/2009/08/29/4498244.aspx

 以上反射取得所需控件,也可以用下面反射代码:

 

 String rootName = String.Format("Binglang.SilverlightDemo19.{0}", e.InitParams["InitPage"]);
 
Type type = Type.GetType(rootName );
  UIElement rootVisual = Activator.CreateInstance(type)  as UIElement;

 this.RootVisual  = (UIElement)this._contentPage;

 

修改aspx页面

<div id="silverlightControlHost">

           <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%" >

                <param name="source" value="ClientBin/Binglang.SilverlightDemo19.xap"/>

                <param name="InitParams" value="InitPage=SilverlightControl1" />

                <param name="onerror" value="onSilverlightError" />

                <param name="background" value="white" />

                <param name="minRuntimeVersion" value="3.0.40624.0" />

                <param name="autoUpgrade" value="true" />

                <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=3.0.40624.0" style="text-decoration: none;">

                     <img src="http://go.microsoft.com/fwlink/?LinkId=108181" alt="获取 Microsoft Silverlight" style="border-style: none"/>

                </a>

           </object><iframe id="_sl_historyFrame" style='visibility:hidden;height:0;width:0;border:0px'></iframe></div>



本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/manimanihome/archive/2009/08/29/4498244.aspx

 2.调用不同SilverLight项目中的指定控件

 

2.1.建立项目

(1)Binglang.SilverlightDemo20

(2)Binglang.SilverlightDemo20.Web

(3) Binglang.ExternalProject

 

注意:项目Binglang.SilverlightDemo20中需要引用using System.Xml.Linq;

 

假设(1)(3)中各有一个控件,名称都为MainPage.xaml (不一定要相同)

 

分享到:
评论

相关推荐

    SilverLight 自定义右键菜单 ContextMenu

    在本文中,我们将深入探讨如何在Silverlight应用中自定义右键菜单,即ContextMenu。Silverlight是一种由微软开发的富互联网应用程序(RIA)框架,它提供了丰富的用户界面和交互功能。在默认情况下,Silverlight ...

    Silverlight树形菜单[带图标],silverlight 调用JS

    本话题主要围绕如何在Silverlight中实现带图标的树形菜单以及如何通过Silverlight调用JavaScript来完成特定任务,如退出系统或关闭当前网页。 首先,让我们深入探讨Silverlight中的树形菜单。树形菜单是一种常见的...

    silverlight用户验证示例

    - Silverlight中的数据通信通常是异步的,这意味着服务调用不会阻塞用户界面。异步调用使用BeginInvoke和EndInvoke方法,或者更现代的Task和async/await模式。 - 异步通信对于保持良好的用户体验至关重要,因为...

    Silverlight模仿Google的自定义桌面

    在Silverlight中,可以通过创建UserControl或使用其他UI控件来实现这些功能。 【知识点3:数据绑定】为了实现桌面的自定义功能,需要利用Silverlight的数据绑定机制将用户的选择和设置存储在服务器端或本地,以便在...

    Silverlight布局墙控件源码

    在源码中,我们可以看到一个名为`SilverlightWallPanel`的类,它是派生自`Panel`基类的自定义控件。`Panel`基类提供了对子元素布局的基本支持,`SilverlightWallPanel`则在此基础上实现了"墙"的效果。这个效果通常是...

    商业编程-源码-silverlight漂亮的上传控件源码.zip

    本资料主要探讨的是一个基于Silverlight的漂亮且功能强大的上传控件的源码分析,帮助开发者理解和运用此类控件,提升项目中的用户交互体验。 1. Silverlight基础 Silverlight是一种插件技术,它允许开发者在浏览器...

    Silverlight 风格控件

    6. **扩展性与兼容性**:Silverlight提供了丰富的API和库,允许开发者扩展其功能,实现自定义控件。同时,尽管Silverlight已被WPF和UWP等技术取代,但其遗留的应用程序仍能在多个浏览器和平台上运行,具备一定的兼容...

    Silverlight控件应用程序

    样式和模板可以自定义控件的外观;而动画效果则能为用户带来更生动的交互体验。同时,通过WCF或ASP.NET服务,Silverlight应用程序可以与后端数据库或其他服务进行数据交换,实现更强大的业务逻辑。 总的来说,...

    ASP.NET-[其他类别]Silverlight模仿Google的自定义桌面.zip

    这将涉及到Web服务的调用、数据库交互、Silverlight控件的使用、UI设计和用户体验优化等多个方面。同时,模仿Google自定义桌面也意味着会涉及到用户权限管理、个性化设置保存和恢复等复杂功能的实现。 总的来说,这...

    silverlight datagrid控件动画

    在本文中,我们将深入探讨Silverlight 4.0中的DataGrid控件以及如何为其添加动画效果。Silverlight是一种由微软开发的富互联网应用程序(RIA)技术,它允许开发者创建交互式、媒体丰富的Web应用程序。而DataGrid控件...

    iclient for silverlight使用SuperMap IS.NET自定义引擎功能

    本篇文章将深入探讨如何利用iClient for Silverlight调用SuperMap IS.NET的自定义引擎功能,特别是动态分段这一特性。 首先,理解“自定义引擎”是关键。在GIS领域,自定义引擎允许开发者根据特定需求定制地图渲染...

    Silverlight4中打开GoogleMap

    综上所述,"Silverlight4中打开GoogleMap"涉及到的知识点包括:Silverlight 4的基础知识、Silverlight与JavaScript的交互、Google Maps API的使用、自定义控件开发、数据绑定、地理编码以及性能优化和用户体验设计。...

    使用silverlight5在vs10上使用SuperMap iClient调用百度地图

    这可能涉及到JavaScript的嵌入或者自定义Silverlight控件来桥接SuperMap iServer和百度地图API。你需要在项目中引用百度地图JavaScript库,然后在Silverlight中使用WebBrowser控件加载并交互百度地图API。 7. **...

    silverlight中导入和导出Excel

    5. **显示数据**:在Silverlight界面中,将接收到的数据展示在控件中,例如DataGrid。 **导出Silverlight数据到Excel** 1. **数据准备**:在Silverlight客户端,先将要导出的数据整理成合适的格式,可以是...

    Silverlight打开右键菜单Demo

    总之,“Silverlight打开右键菜单Demo”是一个关于如何在Silverlight应用中利用Popup控件创建并管理右键菜单的实例。这个示例涵盖了用户界面设计、事件处理和交互逻辑等多个方面,对于提升Silverlight开发者在UI交互...

    Silverlight编程基本知识及技巧

    8. **使用用户控件**:用户控件是Silverlight中可重用的UI组件,开发者可以将复杂的UI逻辑封装在用户控件中,提高代码的可维护性和复用性。 9. **使用控件模板**:控件模板允许自定义控件的外观和布局,通过修改...

    Beginning Silverlight 5 in C#.pdf

    22. 自定义控件(Custom Controls):开发者经常会需要创建特定功能的控件,书籍中介绍了如何创建和使用自定义控件。 23. 打印功能(Printing):Silverlight 5引入了新的打印API,书籍详细介绍了如何在Silverlight...

    silverlight for arcgis 服务调用,经纬度定位

    使用ArcGIS API for Silverlight中的`MapService`类,我们可以加载地图服务,然后使用`Layer`类将服务添加到地图控件中。 2. **经纬度定位**:在地图应用中,我们可能需要根据特定的经纬度坐标来定位地图。在...

Global site tag (gtag.js) - Google Analytics