现在做了一个web自定义控件,但里面含有一个图像,我想把这个图像也打包在dll文件中,然后在引用控件的时候,直接就把图像显示出来了,在自定义控件里怎么写,怎么把图像打包进去呢?protected override void Render(HtmlTextWriter output)
{
string _html = "<table border=\"1"><tr><td><img src=\"图像\">"+this._text+"</td></tr></table>"; output.Write(_html);
}

解决方案 »

  1.   

    用资源。
    要把图片当做嵌入的资源来编译。你选中文件,在属性里面,生成操作选项选中“嵌入的资源”
    以下是把一个html加入到资源中。
    你可以改一下,把图片加到入资源中。
    在CS代码中加入
    if(!System.IO.File.Exists(System.Web.HttpContext.Current.Server.MapPath("/aspnet_client/system_web/GUIK/Calendar_CN.htm")))
    {
    Stream stream;
    Assembly a = Assembly.GetExecutingAssembly();
    stream = a.GetManifestResourceStream("Ghost.Control.Calendar.aspnet_client.Calendar_CN.htm");
    System.IO.Directory.CreateDirectory(System.Web.HttpContext.Current.Server.MapPath("/aspnet_client/system_web/GUIK"));
    FileStream fs = new FileStream(System.Web.HttpContext.Current.Server.MapPath("/aspnet_client/system_web/GUIK/Calendar_CN.htm"), System.IO.FileMode.Create, FileAccess.Write);
    StreamReader sr = new StreamReader(stream);
    string html = sr.ReadToEnd(); System.IO.StreamWriter sw = new StreamWriter(fs);
    sw.BaseStream.Seek(0, SeekOrigin.End);
    sw.WriteLine(html);
    sw.Flush();
    sw.Close();
    sr.Close();
    fs.Close();
    stream.Close();

    }
    这样就把资源复制到文件夹中,使用时注意路径就行。