从ASPX页面调用多个silverlight页面之一

时间:2013-08-10 05:08:01

标签: c# silverlight gis esri

我是Silverlight的新手,每次尝试使用它时,这似乎都是一个问题。我正在将ESRI GIS映射添加到我的ASP.NET应用程序中。我正在使用Silverlight控件来映射。所以,我创建了我的Silverlight项目。我希望一个XAML页面成为具有某些特性和功能的Map,我可以将其转储到用户Web控件中,我可以在应用程序的多个位置使用它。这并不难,我已经做到了。

问题是,我想在同一个Silverlight项目中创建一个新的XAML页面,该页面包含与Mapping功能相关的不同功能。但是,我似乎无法弄清楚如何将我的silverlight控件添加到页面而不是调用MainPage.xaml文件,而是调用我的新MapPage.xaml。

我有什么遗失的东西。看起来我应该可以在ASPX页面上调用对象的地方执行此操作。

1 个答案:

答案 0 :(得分:0)

好的,我明白了:

1)在ASPX页面的silverlight对象中,添加以下内容:

<param name="initParams" value="map=2" />

2)在Application_Startup函数下的App.xaml.cs文件中的silverlight项目中添加以下内容:

private void Application_Startup(object sender, StartupEventArgs e)
{
    switch (e.InitParams["map"].ToString())
    {
        case "1":
            this.RootVisual = new MainPage();
            break;
        case "2":
            this.RootVisual = new GIS_GEOLOCATE();
            break;
        default:
            this.RootVisual = new MainPage();
            break;
    }
}

您在HTML对象中发送initParms对象,然后将RootVisual设置为您想要的页面。

有人发现此问题吗?