在建立网站时发现vs2005按钮的样式与网站的风格相差太远,而用css定义的话每加一个就要加载相应的css类,所以决定要自己做一个,比如我在css表上有这样两个分类
要在网站中使用自定义的控件要用vs2005打开网站,然后文件->添加->新建项目->然后在弹出窗口中选项目类型为windows,再在右边选web 控件库,给库起个名字后按确定,就会在解决方案中看到新加入的项目了.在控件项目直接更改自动生成的第一个控件,在本例中我将其重命名为MyButton1,代码如下:
嘿嘿,顺便加了个提问的功能.写好这些后生成一下,然后就可以在网页中调用了.
其中
< %@ Register Assembly = "MyControls" Namespace = "MyControls" TagPrefix = "cc1" % >这句是声明自定义控件用的!
< link rel = "Stylesheet" href = "/Styles.css" type = "text/css" />是放按钮样式的css文件,我还不知道如何将css格式嵌入到自定义控件中去,以后会用了再加入吧,如果有此方面心得的同志不彷留言提点一下,谢谢!
- .btn1_mouseout
- {
- BORDER-RIGHT: #B51032 1px solid; PADDING-RIGHT: 3px; BORDER-TOP:
- #B51032 1px solid; PADDING-LEFT: 3px; FONT-SIZE: 12px; FILTER:
- progid:DXImageTransform.Microsoft.Gradient(GradientType=0,
- StartColorStr=#ffffff, EndColorStr=#F2BE76); BORDER-LEFT: #B51032
- 1px solid; CURSOR: hand; COLOR:#513666; PADDING-TOP: 3px;
- BORDER-BOTTOM: #B51032 1px solid ;
- }
- .btn1_mouseover
- {
- BORDER-RIGHT: #7EBF4F 1px solid; PADDING-RIGHT: 3px; BORDER-TOP:
- #7EBF4F 1px solid; PADDING-LEFT: 3px; FONT-SIZE: 12px; FILTER:
- progid:DXImageTransform.Microsoft.Gradient(GradientType=0,
- StartColorStr=#ffffff, EndColorStr=#CAE4B6); BORDER-LEFT: #7EBF4F
- 1px solid; CURSOR: hand; COLOR: #513666; PADDING-TOP: 3px;
- BORDER-BOTTOM: ##7EBF4F 1px solid
- }
要在网站中使用自定义的控件要用vs2005打开网站,然后文件->添加->新建项目->然后在弹出窗口中选项目类型为windows,再在右边选web 控件库,给库起个名字后按确定,就会在解决方案中看到新加入的项目了.在控件项目直接更改自动生成的第一个控件,在本例中我将其重命名为MyButton1,代码如下:
- 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 MyControls
- {
- [DefaultProperty("Text")]
- [ToolboxData("<{0}:MyButton1 runat=server></{0}:MyButton1>")]
- public class MyButton1 : System.Web.UI.WebControls.Button
- {
- private string _confirmMessage = "is OK?";
- [Bindable(true)]
- [Category("Appearance")]
- [DefaultValue("is OK?")]
- [Localizable(true)]
- public string ConfrimMessage
- {
- get
- {
- return _confirmMessage;
- }
- set
- {
- _confirmMessage=value;
- }
- }
- protected override void AddAttributesToRender(HtmlTextWriter writer)
- {
- base.AddAttributesToRender(writer);
- writer.AddAttribute("onclick", "return confirm('" + this._confirmMessage + "');");
- writer.AddAttribute("class","btn1_mouseout");
- writer.AddAttribute("onmouseover", "this.className='btn1_mouseover'");
- writer.AddAttribute("onmouseout", "this.className='btn1_mouseout'");
- }
- }
- }
- <%@ Page Language="C#" AutoEventWireup="true" CodeFile="temp.aspx.cs" Inherits="temp" %>
- <%@ Register Assembly="MyControls" Namespace="MyControls" TagPrefix="cc1" %>
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <html xmlns="http://www.w3.org/1999/xhtml" >
- <head runat="server">
- <title>无标题页</title>
- <link rel="Stylesheet" href="/Styles.css" type="text/css" />
- </head>
- <body>
- <form id="form1" runat="server">
- <br />
- <br />
- <br />
- <cc1:MyButton1 ID="MyOK" runat="server" Text="搞掂" />
- <br />
- <br />
- </form>
- </body>
- </html>
其中
< %@ Register Assembly = "MyControls" Namespace = "MyControls" TagPrefix = "cc1" % >这句是声明自定义控件用的!
< link rel = "Stylesheet" href = "/Styles.css" type = "text/css" />是放按钮样式的css文件,我还不知道如何将css格式嵌入到自定义控件中去,以后会用了再加入吧,如果有此方面心得的同志不彷留言提点一下,谢谢!