Agora. Muitos desenvolvedores já estão usando a funcionalidade WebResource do ASP.NET 2.0. WebResource nos permite incorporar recursos em assemblies. Inclui imagens, texto, etc.
Ao apresentar o WebResource, temos que apresentar o WebResource.axd. Vamos dar uma olhada no
script language="javascript" src="WebResource.axd?a=s&r=WebUIValidation.js&t=631944362841472848" type="text/javascript"></. script >No momento, descobri que os parâmetros de webResource.axd são diferentes da versão atual. Apresentando propriedades em um artigo anterior:
um nome de montagem
r nome do arquivo de recursos
t A hora em que a montagem foi modificada pela última vez
webResource.axd é apenas um mapeamento em ISAPI. Você também pode usar IhttpHandler. <add verb="GET" path="WebResource.axd" type="System.Web.Handlers.AssemblyResourceLoader" /> webResource.axd usa a classe AssemblyResourceLoader para personalizar o processamento de solicitações HTTP e identifica de qual programa vem com base em o programa passado pela consulta Qual recurso obter na montagem.
O seguinte usa o controle giratório como exemplo.
Etapas de uso:
Adicione o recurso a ser incorporado (como uma imagem) ao item No gerenciador de recursos, clique em Arquivo e selecione o recurso incorporado na ação de construção na janela de propriedades.
Adicione os seguintes arquivos ao seu arquivo Assessmentbly.cs
[montagem: WebResource("Obies.Web.UI.WebControls.NumericTextBox.js", "application/x-javascript")]
[assembly: WebResource("Obies.Web.UI.WebControls.NumericTextBox_Silver_BtnUp.gif", "image/gif")] Observe o formato WebResourceAttribute:
[montagem: WebResourceAttribute("MyNameSpaces.Resources.MyImage.gif", "imagem/gif")]
No código-fonte do CONTROL. Você precisa usar o seguinte código para obter a imagem
//obtém URLs WebResource para as imagens GIF incorporadas
String BtnUpImgSrc = this.Page.ClientScript.GetWebResourceUrl(typeof(NumericTextBox),
"Obies.Web.UI.WebControls.NumericTextBox_" + this.ImageSet.ToString() + "_BtnUp.gif");Método GetWebResourceUrl:Obtém uma referência de URL para um recurso do lado do servidor)
Encontrei-o em uma versão anterior. Seu uso é: this.page.GetWebResourceUrl
O código acima obtém o nome da imagem do assembly especificado: Obies.Web.UI.WebControls.NumericTextBox_" + this.ImageSet.ToString() + "_BtnUp.gif, it O que é retornado é o endereço de referência de URL de um recurso do lado do servidor. Semelhante a:
WebResource.axd?d=gWYJBlnQKynoTePlJ34jxyoSpR2Rh9lpYd8ZrSl0&t=632812333820000000Além
disso, o MS fornece uma classe Header. A classe Header opera principalmente em <Head runat="server"></head> em páginas HTML. Incluindo título, etc. Haha. Será muito fácil modificar o título de uma página no futuro.
this.Header.Title = "Este é o novo título da página.";
Adicionar estilo CSS (atributo de estilo) Style style = new Style();
estilo.ForeColor = System.Drawing.Color.Navy;
style.BackColor = System.Drawing.Color.LightGray;
// Adiciona o estilo ao cabeçalho do corpo da página;
this.Header.StyleSheet.CreateStyleRule(style, null, "body");
substituição protegida void OnPreRender (EventArgs e) {
// obtém uma URL WebResource para o script JS principal e registra-o
this.Page.ClientScript.RegisterClientScriptResource(typeof(NumericTextBox),
"Obies.Web.UI.WebControls.NumericTextBox.js");
//obtém uma URL WebResource para o CSS incorporado
String css = this.Page.ClientScript.GetWebResourceUrl (typeof(NumericTextBox),
"Obies.Web.UI.WebControls.NumericTextBox_" + this.ImageSet + ".css");
//regista o CSS
// this.Page.StyleSheetTheme = css;
//this.Page.Header.LinkedStyleSheets.Add (css);
//Versão anterior do método? Só pode ser resolvido com o seguinte código
LinkHtmlLink = newHtmlLink();
link.Attributes.Add("tipo", "texto/css");
link.Attributes.Add("rel", "folha de estilo");
link.Attributes.Add("href", css);
this.Page.Header.Controls.Add(link})
;
Aqui está uma captura de tela de
como usar o controle giratório:
<%@registrar tagprefix="cc" namespace="Obies.Web.UI.WebControls" assembly="Obies.Web.UI.WebControls" %>
<cc:NumericTextBox width="50" ImageSet="Silver" length=" 2" runat="servidor" id="NumericTextBox1"
maxvalue="10" minvalue="0"></cc:NumericTextBox>
<cc:NumericTextBox width="50" ImageSet="Green" length="2" runat="server" id="NumericTextBox2"
maxvalue="10" minvalue="0"></cc:NumericTextBox>
Endereço de origem: http://msdn.microsoft.com/library/default.asp?url=/library/en-us/
dnvs05/html/webresource.asp
Devido a alguns problemas com o código original, muitos recursos não são suportados pelo VS2005 mais recente. Então modificações foram feitas.
Download do código-fonte: