随笔 - 705  文章 - 0  评论 - 1103  阅读 - 138万 

程序库缓存

我们都知道Xap是Silverlight 初始下载的文件,他的大小决定了初次加载的响应速度,如果Xap文件越大初始打开Silverlight应用的等待时间就会越长,那么如何能够让Xap尽可能的小(只是将必须的组件先打包进来),然后当程序用到那些组件的时候,再按需要来下载这些组件呢?

当然是可以的而且很简单,只要找到Silverlight的项目,右键-> 属性 打开项目配置对话框,按下图配置即可

image

使用后的效果是怎么样的呢,你会发现在xap同目录多了很多zip的文件,xap文件也明显的变小了,对了这就是将所用的组件分离了出来,否则Xap就是所有zip的总和大小了

image

 

打开/保存文件对话框

Silverlight 提供了OpenFileDialog 对话框用来选择客户端本地文件,SaveFileDialog对话框用来保存文件到客户端本地。

OpenFileDialog

        private OpenFileDialog openFile = new OpenFileDialog();
        //弹ˉ出?文?件t对?象ó框ò
        if (openFile.ShowDialog() == true)
        {
            BitmapImage bmp = new BitmapImage();
            //设è置?图?源′为a用?户§选?择?的?图?片?
            bmp.SetSource(openFile.File.OpenRead());
            image.Source = bmp;
        }

SaveFileDialog

        //保£存?文?件t
        private void SaveTextBoxToFile()
        {
            //创′建¨文?件t保£存?对?话°框ò对?象ó
            SaveFileDialog mySaveFileDialog = new SaveFileDialog();
            //设è置?保£存?文?件t的?默?认?后ó缀o类à型í
            mySaveFileDialog.Filter = "文?本?文?件t (.txt)|*.txt|All Files|*.*";
            mySaveFileDialog.FilterIndex = 1;
            //显?示?保£存?对?话°框ò
            bool? ret = mySaveFileDialog.ShowDialog();
            if (ret == true)
            {
                //将?文?件t以?流÷的?方?式?写′到?的?客í户§端?
                using (Stream fs = (Stream)mySaveFileDialog.OpenFile())
                {
                    //指?定¨编à码?为aUTF-8
                    byte[] info = (new UTF8Encoding(true)).GetBytes(tbContent.Text);
                    fs.Write(info, 0, info.Length);
                    fs.Close();
                }
            }
        }

代码片段来自Silverlight 开发详解代码

posted on   冯瑞涛  阅读(877)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示