asp.net自定控件设计时不能显示图片
1.我的图片都放在了Resources文件夹中2.在这个文件中的图片“生成操作”时,我都改成了“嵌入的资源”
3.资源路径我也映射了
4.我的文件夹路径为:MutiMenuCtl //工程名称
|----Resources //资源文件夹
|----MutiMenuCtl.gif //设计时要显示的图片
//??????????????????????????????????????????
问题:我想问问各位老大,为什么在控件设计时(也就是将控件拖到页面的时候,为什么显示不出来我的图片)?
//==========以下为代码部分(映射和导出都在这里面),请各位老大,老大中的老大帮忙看看================
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Linq;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Drawing;
[assembly: WebResource("MutiMenuCtl.Resources.MutiMenuCtl.gif", "image/gif")]
namespace MutiMenuCtl
{
//初始化控件项目
[
DefaultProperty("Text"),
ToolboxData("<{0}:MutiMenuCtl runat=server></{0}:MutiMenuCtl>"),
ToolboxBitmap(typeof(MutiMenuCtl), "Resources.MutiMenuIco.bmp"),
]
public class MutiMenuCtl : CompositeControl
{
[Bindable(true)]
[Category("Appearance")]
[DefaultValue("")]
[Localizable(true)]
public string Text
{
get
{
String s = (String)ViewState["Text"];
return ((s == null) ? "[" + this.ID + "]" : s);
}
set
{
ViewState["Text"] = value;
}
}
/// <summary>
/// 输出控件风格
/// </summary>
/// <param name="output"></param>
protected override void RenderContents(HtmlTextWriter output)
{
output.Write("<img src="+this.Page.ClientScript.GetWebResourceUrl(this.GetType(),"MutiMenuCtl.Resources.MutiMenuCtl.gif")+" />");
}
}
}
--------------------编程问答-------------------- 先调试看MutiMenuCtl.Resources.MutiMenuCtl.gif路径是什么 --------------------编程问答-------------------- 调试过了,都是一串乱码,怎么看,有不有好的调试方法 --------------------编程问答-------------------- 这是调试时的返回值:
/WebResource.axd?d=OE2chAPZlpV1_P_-NzRaoNZIKNq-PjuZGJeg8xgZbL82AtjDVpTZIYgl95XHAfyBKRJAZoGTvM05Uap4hmfU4A2&t=634088401540000000
这是说的什么意思 --------------------编程问答-------------------- Type t = typeof(System.Web.Handlers.AssemblyResourceLoader);
object[] args = new object[] { typeof(Page), "WebForms.js", true };
BindingFlags bindingFlags = BindingFlags.DeclaredOnly | BindingFlags.Static | BindingFlags.NonPublic | BindingFlags.InvokeMethod;
string result = (string)(t.InvokeMember("GetWebResourceUrl", bindingFlags, null, null, args));
Page.ClientScript.RegisterStartupScript(typeof(_Default), "abc", String.Format("<script src=\"{0}\" type=\"text/javascript\"></script>", result)); --------------------编程问答--------------------
你这段代码是要将“GetWebResourceUrl"还原还是,什么 --------------------编程问答-------------------- 你把简单的问题搞复杂了,我现在是想把复杂的问题变简单 --------------------编程问答-------------------- 这跟注册启动脚本有什么关系,我只是想调用资源文件夹中的图片资源 --------------------编程问答-------------------- 他把那个路径加密 了,是想看看那个路径
补充:.NET技术 , ASP.NET