结合Jst和Css实现了在Asp.net下XP风格的下拉菜单,效果图如下:
实现的步骤及源码如下:
Default.aspx代码:
1<%@ Page language="c#" Codebehind="default.aspx.cs" AutoEventWireup="false" Inherits="PopupMenuControlSample._default" %>
2<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
3<HTML>
4 <HEAD>
5 <title>PopupMenu control sample</title>
6 <meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
7 <meta content="C#" name="CODE_LANGUAGE">
8 <meta content="JavaScript" name="vs_defaultClientScript">
9 <meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
10 <LINK href="PopupMenuSample.css" type="text/css" rel="Stylesheet">
11 </HEAD>
12 <body bgColor="#ffffcc" MS_POSITIONING="GridLayout">
13 <form id="MainForm" method="post" runat="server">
14 <asp:label id="PopupMenuOwner" Runat="server" CssClass="MainText">Click on me to show the popup menu</asp:label>
15 </form>
16 </body>
17</HTML>
18
2<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
3<HTML>
4 <HEAD>
5 <title>PopupMenu control sample</title>
6 <meta content="Microsoft Visual Studio .NET 7.1" name="GENERATOR">
7 <meta content="C#" name="CODE_LANGUAGE">
8 <meta content="JavaScript" name="vs_defaultClientScript">
9 <meta content="http://schemas.microsoft.com/intellisense/ie5" name="vs_targetSchema">
10 <LINK href="PopupMenuSample.css" type="text/css" rel="Stylesheet">
11 </HEAD>
12 <body bgColor="#ffffcc" MS_POSITIONING="GridLayout">
13 <form id="MainForm" method="post" runat="server">
14 <asp:label id="PopupMenuOwner" Runat="server" CssClass="MainText">Click on me to show the popup menu</asp:label>
15 </form>
16 </body>
17</HTML>
18
Default.aspx.cs代码:
1using System;
2using System.Collections;
3using System.ComponentModel;
4using System.Data;
5using System.Drawing;
6using System.Web;
7using System.Web.SessionState;
8using System.Web.UI;
9using System.Web.UI.WebControls;
10using System.Web.UI.HtmlControls;
11using UIControl;
12
13namespace PopupMenuControlSample
14{
15 /**//// <summary>
16 /// Summary description for _default.
17 /// </summary>
18 public class _default : System.Web.UI.Page
19 {
20 const string ControlContainer = "MainForm";
21 const string ClickedMessage = "<BR/><BR/>The menu item '{0}' has been selected by the user.";
22 const string NoMenuItemClicked = "<BR/><BR/>No menu item has been clicked yet.";
23 const string MessageStyle = "Message";
24 const string MenuControlID = "PopupMenu";
25 const MenuItemDirection MenuDirection = MenuItemDirection.Vertical;
26 const string PopupMenuParentID = "PopupMenuOwner";
27 const string Services = "Services";
28 const string ServicesAltText = "available services";
29 const string ServicesName = "Services";
30 const string ServicesJavaScript = null;
31 const string ServicesImageUrl = null;
32 const MenuItemDirection ServicesDirection = MenuItemDirection.Vertical;
33 const string ServicesTableID = "Services";
34 const string AboutMe = "About me";
35 const string AboutMeAltText = "about me";
36 const string AboutMeName = "AboutMe";
37 const string AboutMeJavaScript = null;
38 const string AboutMeImageUrl = null;
39 const MenuItemDirection AboutMeDirection = MenuItemDirection.Vertical;
40 const string AboutMeTableID = "AboutMe";
41 const string UsefulLinks = "Useful links";
42 const string UsefulLinksAltText = "useful links";
43 const string UsefulLinksName = "UsefulLinks";
44 const string UsefulLinksJavaScript = null;
45 const string UsefulLinksImageUrl = null;
46 const MenuItemDirection UsefulLinksDirection = MenuItemDirection.Vertical;
47 const string UsefulLinksTableID = "UsefulLinks";
48 const string Presenter = ".NET Presenter";
49 const string PresenterAltText = "presenter for your .NET usergroup or show";
50 const string PresenterName = "Presenter";
51 const string PresenterJavaScript = null;
52 const string PresenterImageUrl = "images/presenter.gif";
53 const string PresenterTableID = "Presenter";
54 const string Author = ".NET author";
55 const string AuthorAltText = "author for your .NET magazine";
56 const string AuthorName = "Author";
57 const string AuthorJavaScript = "window.alert('Klaus Salchner, Chief Enterprise Architect');";
58 const string AuthorImageUrl = null;
59 const string AuthorTableID = "Author";
60 const string Architect = ".NET architecture review";
61 const string ArchitectAltText = "architecture review for your .NET project";
62 const string ArchitectName = "Architect";
63 const string ArchitectJavaScript = null;
64 const string ArchitectImageUrl = "images/review.gif";
65 const string ArchitectTableID = "Architect";
66 const string Resume = "Resume";
67 const string ResumeAltText = "my resume";
68 const string ResumeName = "Resume";
69 const string ResumeJavaScript = null;
70 const string ResumeImageUrl = null;
71 const string ResumeTableID = "Resume";
72 const string ContactMe = "Contact me";
73 const string ContactMeAltText = "contact me";
74 const string ContactMeName = "ContactMe";
75 const string ContactMeJavaScript = null;
76 const string ContactMeImageUrl = "images/contactme.gif";
77 const string ContactMeTableID = "ContactMe";
78 const string CodeGuru = "CodeGuru";
79 const string CodeGuruAltText = "CodeGuru";
80 const string CodeGuruName = "CodeGuru";
81 const string CodeGuruJavaScript = null;
82 const string CodeGuruImageUrl = "images/codeguru.gif";
83 const string CodeGuruTableID = "CodeGuru";
84 const string DeveloperLand = "DeveloperLand";
85 const string DeveloperLandAltText = "DeveloperLand";
86 const string DeveloperLandName = "DeveloperLand";
87 const string DeveloperLandJavaScript = null;
88 const string DeveloperLandImageUrl = "images/developerland.gif";
89 const string DeveloperLandTableID = "DeveloperLand";
90 const string Msdn = "MSDN";
91 const string MsdnAltText = "MSDN";
92 const string MsdnName = "Msdn";
93 const string MsdnJavaScript = null;
94 const string MsdnImageUrl = "images/msdn.gif";
95 const string MsdnTableID = "Msdn";
96 const string GotDotNet = "Got-Dot-Net";
97 const string GotDotNetAltText = "Got-Dot-Net";
98 const string GotDotNetName = "GotDotNet";
99 const
2using System.Collections;
3using System.ComponentModel;
4using System.Data;
5using System.Drawing;
6using System.Web;
7using System.Web.SessionState;
8using System.Web.UI;
9using System.Web.UI.WebControls;
10using System.Web.UI.HtmlControls;
11using UIControl;
12
13namespace PopupMenuControlSample
14{
15 /**//// <summary>
16 /// Summary description for _default.
17 /// </summary>
18 public class _default : System.Web.UI.Page
19 {
20 const string ControlContainer = "MainForm";
21 const string ClickedMessage = "<BR/><BR/>The menu item '{0}' has been selected by the user.";
22 const string NoMenuItemClicked = "<BR/><BR/>No menu item has been clicked yet.";
23 const string MessageStyle = "Message";
24 const string MenuControlID = "PopupMenu";
25 const MenuItemDirection MenuDirection = MenuItemDirection.Vertical;
26 const string PopupMenuParentID = "PopupMenuOwner";
27 const string Services = "Services";
28 const string ServicesAltText = "available services";
29 const string ServicesName = "Services";
30 const string ServicesJavaScript = null;
31 const string ServicesImageUrl = null;
32 const MenuItemDirection ServicesDirection = MenuItemDirection.Vertical;
33 const string ServicesTableID = "Services";
34 const string AboutMe = "About me";
35 const string AboutMeAltText = "about me";
36 const string AboutMeName = "AboutMe";
37 const string AboutMeJavaScript = null;
38 const string AboutMeImageUrl = null;
39 const MenuItemDirection AboutMeDirection = MenuItemDirection.Vertical;
40 const string AboutMeTableID = "AboutMe";
41 const string UsefulLinks = "Useful links";
42 const string UsefulLinksAltText = "useful links";
43 const string UsefulLinksName = "UsefulLinks";
44 const string UsefulLinksJavaScript = null;
45 const string UsefulLinksImageUrl = null;
46 const MenuItemDirection UsefulLinksDirection = MenuItemDirection.Vertical;
47 const string UsefulLinksTableID = "UsefulLinks";
48 const string Presenter = ".NET Presenter";
49 const string PresenterAltText = "presenter for your .NET usergroup or show";
50 const string PresenterName = "Presenter";
51 const string PresenterJavaScript = null;
52 const string PresenterImageUrl = "images/presenter.gif";
53 const string PresenterTableID = "Presenter";
54 const string Author = ".NET author";
55 const string AuthorAltText = "author for your .NET magazine";
56 const string AuthorName = "Author";
57 const string AuthorJavaScript = "window.alert('Klaus Salchner, Chief Enterprise Architect');";
58 const string AuthorImageUrl = null;
59 const string AuthorTableID = "Author";
60 const string Architect = ".NET architecture review";
61 const string ArchitectAltText = "architecture review for your .NET project";
62 const string ArchitectName = "Architect";
63 const string ArchitectJavaScript = null;
64 const string ArchitectImageUrl = "images/review.gif";
65 const string ArchitectTableID = "Architect";
66 const string Resume = "Resume";
67 const string ResumeAltText = "my resume";
68 const string ResumeName = "Resume";
69 const string ResumeJavaScript = null;
70 const string ResumeImageUrl = null;
71 const string ResumeTableID = "Resume";
72 const string ContactMe = "Contact me";
73 const string ContactMeAltText = "contact me";
74 const string ContactMeName = "ContactMe";
75 const string ContactMeJavaScript = null;
76 const string ContactMeImageUrl = "images/contactme.gif";
77 const string ContactMeTableID = "ContactMe";
78 const string CodeGuru = "CodeGuru";
79 const string CodeGuruAltText = "CodeGuru";
80 const string CodeGuruName = "CodeGuru";
81 const string CodeGuruJavaScript = null;
82 const string CodeGuruImageUrl = "images/codeguru.gif";
83 const string CodeGuruTableID = "CodeGuru";
84 const string DeveloperLand = "DeveloperLand";
85 const string DeveloperLandAltText = "DeveloperLand";
86 const string DeveloperLandName = "DeveloperLand";
87 const string DeveloperLandJavaScript = null;
88 const string DeveloperLandImageUrl = "images/developerland.gif";
89 const string DeveloperLandTableID = "DeveloperLand";
90 const string Msdn = "MSDN";
91 const string MsdnAltText = "MSDN";
92 const string MsdnName = "Msdn";
93 const string MsdnJavaScript = null;
94 const string MsdnImageUrl = "images/msdn.gif";
95 const string MsdnTableID = "Msdn";
96 const string GotDotNet = "Got-Dot-Net";
97 const string GotDotNetAltText = "Got-Dot-Net";
98 const string GotDotNetName = "GotDotNet";
99 const