注册本站  论坛  繁體中文

电脑技巧
手机 | MP3 | MP4 | 显卡 | 主板 | 显示器 | 光存储 | 笔记本 | 网络设备 | 移动存储 | 数码相机
键鼠 | CPU | 音箱 | GPS | 电视 | 服务器 | 投影机 | 机箱电源 | 品牌电脑 | 办公打印 |
| 网站首页 | Cisco | Windows | Linux | Java | Dotnet | Oracle | 网页设计 | 平面设计 | 安全 | 软件应用 | 电脑维修 | 办公维修 |
您现在的位置: 电脑技巧 >> 网页设计 >> Flash >> Action Script >> 网页设计正文

开发类似微软中国导航条的控件

文章来源:ChinaITLab搜集整理 作者:佚名 更新时间:2006-5-10 【 】 【加入收藏
根据书上例子自己写了一下,用VS2005写,特别方便,代码如下 using System;
using System.ComponentModel;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Drawing;
namespace ClingingBoy
{
 [DefaultProperty("text"),
 ToolboxData("<{0}:Cingmenu runat=server>")]
 /// 
 /// cingmenu 的摘要说明
 /// 
 public class Cingmenu:WebControl
 {
 #region 定义变量
 private string text = "";
 private string href = "";
 private string width = "20%";
 private string height = "";
 private string fontfamily = "宋体";
 private string fontsize = "12px";
 private string target = "_self";
 private bool displayPipe = true; 
 #endregion 
 #region 构造函数
 public Cingmenu():base(HtmlTextWriterTag.Div)
 {
 }
 #endregion
 #region 定义属性
 [Description("该属性用于表示控件显示的文字内容"),
 Bindable(true),
 Category("Appearance"),
 DefaultValue("")]
 public string Text
 {
 get
 {
 return text;
 }
 set
 {
 text = value;
 }
 }
 [Description("该属性用于表示控件的链接地址"),
 Bindable(true),
 Category("Appearance"),
 DefaultValue("")]
 public string Href
 {
 get
 {
 return href;
 }
 set
 {
 href = value;
 }
 }
 [Description("该属性用于表示控件显示的文字大小"),
 Bindable(true),
 Category("Appearance"),
 DefaultValue("12px")]
 public string FontSize
 {
 get
 {
 return fontsize;
 }
 set
 {
 fontsize = value;
 }
 }
 [Description("该属性用于表示控件显示的文字字体类型"),
 Bindable(true),
 Category("Appearance"),
 DefaultValue("宋体")]
 public string FontFamily
 {
 get
 {
 return fontfamily;
 }
 set
 {
 fontfamily = value;
 }
 }
 [Description("该属性用于表示控件的链接的目标框架"),
 Bindable(true),
 Category("Appearance"),
 DefaultValue("宋体")]
 public string Target
 {
 get
 {
 return target;
 }
 set
 {
 target = value;
 }
 }
 [Description("该属性用于表示控件是否显示分隔符 | "),
 Bindable(true),
 Category("Appearance"),
 DefaultValue("true")]
 public bool DisplayPipe
 {
 get
 {
 return displayPipe;
 }
 set
 {
 displayPipe = value;
 }
 }
 #endregion
 protected override void AddAttributesToRender(HtmlTextWriter output)
 {
 //定义控件div的样式style="WHITE-SPACE: nowrap;BORDER-TOP: #999 1px solid;BACKGROUND: #f1f1f1; PADDING-BOTTOM: 2px; PADDING-TOP: 1px; BORDER-BOTTOM: #999 1px solid" 
 output.AddStyleAttribute(HtmlTextWriterStyle.BackgroundColor, "#f1f1f1");
 output.AddStyleAttribute("white-space", "nowrap");
 output.AddStyleAttribute("BORDER-TOP", "#999 1px solid");
 output.AddStyleAttribute("BORDER-BOTTOM", "#999 1px solid");
 output.AddStyleAttribute("PADDING-BOTTOM", "2px");
 output.AddStyleAttribute("PADDING-TOP", "2px");
 output.AddStyleAttribute("WIDTH", width);
 output.AddStyleAttribute("HEIGHT", height);
 base.AddAttributesToRender(output);
 }
 ///  
 /// 呈现控件的方法RenderContents
 /// 
 protected override void RenderContents(HtmlTextWriter output)
 {
 //定义样式
 output.AddStyleAttribute(HtmlTextWriterStyle.Width, "10px");
 output.AddStyleAttribute(HtmlTextWriterStyle.FontSize, fontsize);
 output.AddStyleAttribute(HtmlTextWriterStyle.FontFamily, fontfamily);
 output.RenderBeginTag(HtmlTextWriterTag.Span);
 //定义样式
 ////onmouseover="this.style.cssText=’color:black;text-decoration:none;BORDER: #999 1px solid; DISPLAY: block; PADDING-RIGHT: 6px; PADDING-LEFT: 6px; PADDING-BOTTOM: 2px; PADDING-TOP: 2px;BACKGROUND: #ccc; ’" 
 //style="color:black;text-decoration:none;BORDER: #f1f1f1 1px solid;DISPLAY: block; PADDING-RIGHT: 6px; PADDING-LEFT: 6px; PADDING-BOTTOM: 2px;PADDING-TOP: 2px;" href="http://localhost">文字内容
 output.AddStyleAttribute(HtmlTextWriterStyle.Color, "black");
 output.AddStyleAttribute(HtmlTextWriterStyle.TextDecoration, "none");
 output.AddStyleAttribute("BORDER", "#f1f1f1 1px solid");
 output.AddStyleAttribute("DISPLAY", "block");
 output.AddStyleAttribute("PADDING-RIGHT", "6px");
 output.AddStyleAttribute("PADDING-LEFT", "6px");
 output.AddStyleAttribute("PADDING-BOTTOM", "2px");
 output.AddStyleAttribute("PADDING-TOP", "2px");
 output.AddAttribute("onmouseout", "this.style.cssText=’color:black;text-decoration:none;BORDER: #f1f1f1 1px solid; DISPLAY: block; PADDING-RIGHT: 6px;PADDING-LEFT: 6px; PADDING-BOTTOM: 2px; PADDING-TOP: 2px; ’");
 output.AddAttribute("onmouseover", "this.style.cssText=’color:black;text-decoration:none;BORDER: #999 1px solid; DISPLAY: block; PADDING-RIGHT: 6px; PADDING-LEFT: 6px; PADDING-BOTTOM: 2px; PADDING-TOP: 2px;BACKGROUND: #ccc; ’");
 //定义属性Href,Target
 output.AddAttribute(HtmlTextWriterAttribute.Href, href);
 output.AddAttribute(HtmlTextWriterAttribute.Target, target);
 output.RenderBeginTag(HtmlTextWriterTag.A);
 output.Write(text);
 if (displayPipe)
 {
 output.AddStyleAttribute(HtmlTextWriterStyle.Color, "#a9a9a9");
 output.AddStyleAttribute("FONT", "70%");
 output.AddStyleAttribute(HtmlTextWriterStyle.FontSize, fontsize);
 output.AddStyleAttribute("PADDING-RIGHT", "3px");
 output.AddStyleAttribute("PADDING-LEFT", "3px");
 output.RenderBeginTag(HtmlTextWriterTag.Span);
 output.Write("|");
 output.RenderEndTag();
 }
 else
 {
 output.RenderBeginTag(HtmlTextWriterTag.Span);
 output.Write(" ");
 output.RenderEndTag();
 }
 output.RenderEndTag();
 output.RenderEndTag();
 //定义分隔符及样式
 
 //使用默认逻辑来呈现子控件
 base.RenderContents(output);
 }
 
 }
}

前台的

@ Page Language="C#" %>
@ Register Assembly="CingMenu" Namespace="ClingingBoy" TagPrefix="cc2" %>
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>
head>
<body>
 <form id="form1" runat="server">
 <DIV>
      <TABLE id="Table5" border="0" cellpadding="0" cellspacing="0" style="height: 2px">
        <TR>
          <TD style="height: 26px">
            <cc2:Cingmenu id="CustomControl1" DisplayPipe="true" runat="server" Target="_blank" Text="微软中国"
              Href="http://www.clingingboy.com">cc2:Cingmenu>
          TD>
          <TD style="height: 26px">
            <cc2:Cingmenu id="Webcustomcontrol1" DisplayPipe="true" runat="server" Target="_blank" Text="微软中国"
              Href="http://www.clingingboy.com">cc2:Cingmenu>
          TD>
          <TD style="height: 26px">
            <cc2:Cingmenu id="Webcustomcontrol2" DisplayPipe="true" runat="server" Target="_blank" Text="微软中国"
              Href="http://www.clingingboy.com">cc2:Cingmenu>
          TD>
          <TD style="height: 26px">
            <cc2:Cingmenu id="Webcustomcontrol3" DisplayPipe="false" runat="server" Target="_blank" Text="微软中国"
              Href="http://www.clingingboy.com">cc2:Cingmenu>
          TD>
        TR>
      TABLE>
    DIV>
 form>
body>
html>
  • 上一篇网页设计:

  • 下一篇网页设计:
  • 最 新 热 门
     Flash教程:if条件语句的用法
     Flash教程:测试AS代码的执行速度
     Flash教程:trace()的使用
     实现在AJAX下的前进、后退功能
     创建吸引访问者的网站内容的14种方法
     LBS功能:图片的自适应实现代码
     LBS增加引用地址和永久地址点击复制功能
     学习CSS布局网页的一些实例
     CSS学习者:2008年不要作浮躁的人
     网页设计制作之改进超级链接效果
    最 新 推 荐
     Flash教程:if条件语句的用法
     Flash教程:测试AS代码的执行速度
     Flash教程:trace()的使用
     Flash AS 教程:多种图片切换效果
     Flash AS教程:填色游戏的制作
     flash教程:使用拆分数字和文字的函数
     FLASH CLASS的基本编写规范
     通过实例学习Flash AS3.0——案例六
     flash as实现用鼠标观看图片各部分的效果
     Flash教程:纯AS打造3d小方块
    相 关 文 章

    Flash开发规范
    利用CSS框架进行高效率的站点开发 Elements
    WEB标准,Web前端开发工程师必备技术列表
    WEB标准,Web前端开发工程师必备技术列表
    关于JavaScript开发时的五个小提示
    Web开发时碰到的问题以及心得经验
    Dreamweaver代码片断提高css开发效率
    Flash CS3 组件开发教程
    Flash网站全屏 (类似土豆网的Flash视频全屏…
    flash组件开发要点

    | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告

     

    Copyright 2006-2008 pcjx.com All Rights Reserved
    电脑技巧 版权所有 粤ICP备06059145号 地图
    本网站所有内容未经许可不得转载或做其他使用