Silverlight读取嵌入在xap文件中的文件内容

假如在 SilverlightApplication6 工程中添加一个文件夹 Content ,下面放置一个 mxh.txt 文件和 mxh.jpg 的照片,文件内容随便写。在“解决方案浏览器”的文件属性中,设置“Build Action”为“Content”;“Copy to Output Directory”属性设置为“Do not copy”。

在 xaml 文件中输入:

XAML 代码

<UserControl x:Class="SilverlightApplication6.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Width="800" Height="600">
    <Grid x:Name="LayoutRoot" Background="White">
    <Canvas Width="800" Height="600">
      <TextBox x:Name="TextBoxName" Height="30" Canvas.Top="10"></TextBox>
      <Image x:Name="ImageNameIncude" Canvas.Top="60" Height="200"></Image>
      <Image x:Name="ImageNameEmbed" Canvas.Top="260" Height="100"></Image>
    </Canvas>
  </Grid>
</UserControl>

xaml.cs 内容输入:

C# 代码

using System;
using System.Windows;
using System.Windows.Media.Imaging;
using System.Windows.Controls;
using System.IO;
using System.Windows.Resources;

namespace SilverlightApplication6
{
  public partial class MainPage : UserControl
  {
    public MainPage()
    {
      InitializeComponent();

      // 读取文字
      StreamResourceInfo r = Application.GetResourceStream(new Uri("Content/mxh.txt", UriKind.Relative));
      StreamReader sr = new StreamReader(r.Stream);
      TextBoxName.Text = sr.ReadToEnd();
      sr.Dispose();

      //显示 Build Action 为 Content  图片
      r = Application.GetResourceStream(new Uri("Content/mxh.jpg", UriKind.Relative));
      BitmapImage bmp1 = new BitmapImage();
      bmp1.SetSource(r.Stream);
      ImageNameIncude.Source = bmp1;

      //显示 Build Action 为 Resource  图片
      r = Application.GetResourceStream(new Uri("SilverlightApplication6;component/Content/mxh2.jpg", UriKind.Relative));
      BitmapImage bmp2 = new BitmapImage();
      bmp2.SetSource(r.Stream);
      ImageNameEmbed.Source = bmp2;
    }
  }
}

按F5进行编译预览,即可在  TextBox 中看到 mxh.txt文件的内容和显示孟宪会的照片。

注意:分隔符“;component/”是必须的。

另外,注意代码中使用了程序集的名字 SilverlightApplication6。

时间: 2024-10-30 07:58:35

Silverlight读取嵌入在xap文件中的文件内容的相关文章

android 文件读取-Android文件读取问题,读取不到电脑硬盘中的文件

问题描述 Android文件读取问题,读取不到电脑硬盘中的文件 我在Android项目中读取电脑D盘中的文件,D盘中文件存在,New File的时候文件找不到呢,我建了个java项目可以找到,是不是Android项目中不能读取电脑硬盘中的文件啊? 解决方案 楼主解决了吗.....我也遇到了这个问题 解决方案二: 好吧 楼主我解决了 Android 项目开发中 虽然存在D盘 但是虚拟机和真机Debug的时候 手机里都没有D盘呀 所以Java项目可以找到这个文件而项目无法读取D盘的文件

java-Java项目的文件中各个文件

问题描述 Java项目的文件中各个文件 询问一下大家,Java的项目文件中的文件 .settings.bin. src ..classpath. .project都是什么意思,有什么作用呢? 解决方案 Java读取项目内的资源文件Java项目中读取properties文件java中如何获取项目各个目录下的文件 解决方案二: src: 你编写的java代码 bin:经过虚拟机编译,生成的.class文件 .project:如果工程里没有,使用eclipse导入,就到不进来 .classpath :

用XSLT删除XML示例文件中的敏感内容

在处理 XML 文件时,您可能会遇到这种情况:文件中包含敏感数据,而您喜欢的 XML 处理工具又出现了问题,比方说一个 bug.您需要向供应商提供一个引起 bug 的示例文件.当然不能随便发送一个 XML 文件,因为可能是示例文件中的特殊标记造成了问题.您需要有一种方法清除文件中的敏感数据,同时保持文件的特殊结构特征,以便仍然能够说明问题.如本文所述,只要一点 XSLT 技巧就能解决. 消除内容 清单 1 (kill-content.xslt) 中的 XSLT 脚本可以删除所有的文本节点和属性值

VS2010在C#头文件中添加文件注释的方法

本文转载:http://www.cnblogs.com/skm-blog/p/3239900.html   步骤: 1.VS2010 中找到(安装盘符以D盘为例)D:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\ItemTemplatesCache\CSharp\Code\2052\Class.zip 2.在Class.cs 文件中原有代码如下: using System; using System.Collectio

c#查询压缩文件中制定文件 用C#代码怎么写

问题描述 现在需要写一个程序要求就是有很多文件如.xls.doc.jpg.png.gif的文件压缩在压缩包里面目标:如果压缩包里面有一个1.xls的文件我怎么写程序去压缩包中找到1.xls这个文件在哪个压缩包中 解决方案 解决方案二:可不可以先把压缩文件解压到临时文件夹中,然后取得解压出来的所有文件,遍历,判断.然后删除解压的文件.[DllImport("Unzip32")]publicexternstaticintUnZip(inthwnd,stringszCmdLine,Strin

sed删除文件中的一行内容的脚本代码_linux shell

先来看下原始文件的内容: 复制代码 代码如下: root@localhost ~]# cat file.txthello worlda:b:c -h -na:b:c -h -n sed根据条件删除相关的行: 复制代码 代码如下: [root@localhost ~]# sed -i '/a:b:c -h -n/d' file.txt[root@localhost ~]# cat file.txthello world sed根据条件进行相关内容的替换: 复制代码 代码如下: [root@loca

利用jquery的获取JS文件中的字符串内容_jquery

复制代码 代码如下: <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js"></script> <script type="text/javascript"> var _url = "http://www.baidu.com/cache/hps/js/hp

代码-从服务器上下载的压缩文件,通过流的方式怎么读取文件中的内容。

问题描述 从服务器上下载的压缩文件,通过流的方式怎么读取文件中的内容. 如何用java代码实现压缩文件的读取? 例如从银行服务器上下载对账文件后,为了不在本地保存文件. 压缩文件中的文件格式是俩个文本文件,怎么用流的方式读取到压缩文件中的文件内容. 解决方案 ZipEntry http://daoshud1.iteye.com/blog/2012362 解决方案二: http://www.cnblogs.com/kgdxpr/archive/2013/05/20/3088254.html 解决方

Perl从文件中读取字符串的两种实现方法_perl

1. 一次性将文件中的所有内容读入一个数组中(该方法适合小文件):  复制代码 代码如下: open(FILE,"filename")||die"can not open the file: $!";@filelist=<FILE>; foreach $eachline (@filelist) {        chomp $eachline;}close FILE;@filelist=<FILE>; 当文件很大时,可能会出现"ou