技巧:在Silverlight中如何访问外部xap文件中UserControl
2008-10-09 11:38:53 来源:WEB开发网现在解决了xap文件的下载已经程序集的访问问题,我们可以着手来实现了。
实现
实现的过程也是相当简单,首先我们使用WebClient去下载xap文件,相信大家都知道该怎么做了,如下代码所示
void myButton_Click(object sender, RoutedEventArgs e)
{
Uri address = new Uri("http://localhost:4161/ClientBin/ExternalProject.xap");
WebClient webClient = new WebClient();
webClient.OpenReadCompleted += new OpenReadCompletedEventHandler(webClient_OpenReadCompleted);
webClient.OpenReadAsync(address);
}
void webClient_OpenReadCompleted(object sender, OpenReadCompletedEventArgs e)
{
// 得到下载结果
}
这一步比较简单,接下来我们将根据下载的结果,得到相应的程序集。我们知道在xap文件中的AppManifest.xaml文件相当于一个清单,列出了当前xap文件用到的程序集(下篇文章将会介绍),它的内容如下所示:
<Deployment xmlns="http://schemas.microsoft.com/client/2007/deployment"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
EntryPointAssembly="ExternalProject"
EntryPointType="ExternalProject.App"
RuntimeVersion="2.0.30523.6">
<Deployment.Parts>
<AssemblyPart x:Name="ExternalProject" Source="ExternalProject.dll" />
</Deployment.Parts>
</Deployment>
注意,在Deployment.Parts节点下包含了当前应用程序中所有的程序集。首先要根据下载的结果获取AppManifest.xaml文件中的内容,如下代码所示:
Tags:技巧 Silverlight 如何
编辑录入:爽爽 [复制链接] [打 印]更多精彩
赞助商链接