自定义ImageLinkButton美化提交按钮

请访问  http://www.aspx-office.cn 获取更多资料

 

在提交中,最常用的是button,不过最近想在button前面显示一张图片,做起来很麻烦。

让人你可以说使用ImageButton,但是ImageButton的ImageUrl的Image无法多次重用,使用style控制button的背景,在文本过长时,也难以控件,所以采用下面给出的一个解决方法

1建立ImageLinkButton

 

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;

namespace EControls.WebControls
{
    [ToolboxData("<{0}:ImageLinkButton runat=server></{0}:ImageLinkButton>")]
    public class ImageLinkButton : LinkButton
    {
        [Bindable(true)]
        [Category("Appearance")]
        [DefaultValue("")]
        [Localizable(true)]
        [Description("要显示的图像的 Url。")]
        public string ImageUrl
        {
            get
            {
                String s = (String)ViewState["ImageUrl"];
                return ((s == null) ? String.Empty : s);
            }

            set
            {
                ViewState["ImageUrl"] = value;
            }
        }

        protected override void Render(HtmlTextWriter output)
        {
            output.Write("<img src=""" + this.ResolveClientUrl(this.ImageUrl) + """/>");
            base.Render(output);
        }
    }
}

 

2在页面里使用

 

 


正如你看到的,这里有一个ImageUrl属性可以让你设置图片,下面是显示效果

 


怎么样还不错吧

源代码下载

 

ImageLinkButton.cs (1.03 kb)

posted @ 2009-01-19 13:03  启明星工作室  阅读(823)  评论(0编辑  收藏  举报