• 根据用户喜欢的爱好选择不同风格CSS(ViewState)


    使用ASP.NET控件和页面视图状态类(StateBag)的一个实例ViewState 
    新建一个ASP.NET网站,在打开的默认Defalut.aspx中添加DropDownList控件,将其属性AutoPostBack设置为True,默认是false,在Items集合属性中添加如图所示:
     
    点击确定后,下来列表就有两个值红色和绿色。
     
    查看源:

    <%@ Page Language="C#" AutoEventWireup="true"  CodeFile="Default.aspx.cs" Inherits="_Default" %>

    <!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>
            <asp:DropDownList ID="ddpFavorite" runat="server" AutoPostBack="True"
                onselectedindexchanged="ddpFavorite_SelectedIndexChanged">
                <asp:ListItem Value="1">红色</asp:ListItem>
                <asp:ListItem Value="2">绿色</asp:ListItem>
            </asp:DropDownList>
        </div>
        </form>
    </body>
    </html>

    新建样式表red.css

    body
    {
     background-color:Red;
    }

    新建样式表blue.css

    body
    {
     background-color:Blue;
    }
    打开Default.aspx.cs
    using System;
    using System.Configuration;
    using System.Data;
    using System.Linq;
    using System.Web;
    using System.Web.Security;
    using System.Web.UI;
    using System.Web.UI.HtmlControls;
    using System.Web.UI.WebControls;
    using System.Web.UI.WebControls.WebParts;
    using System.Xml.Linq;
    using System.Web.UI.HtmlControls;
    public partial class _Default : System.Web.UI.Page
    {
        string Favorite
        {
            get
            {
                if (ViewState["Favorite"] != null)
                {//判断视图状态是否为空
                    return ViewState["Favorite"].ToString();
                }
                else
                {//默认为红色
                    ViewState["Favorite"] = "1";
                }
                return "1";
            }
            set
            {
                ViewState["Favorite"] = value;
            }
           
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            //创建对象
            HtmlGenericControl link = new HtmlGenericControl();
            //Attributes集合
            link.Attributes.Add("type", "text/css");
            link.Attributes.Add("rel", "stylesheet");
            link.TagName = "link";
            //判断用户选择值
            if (Page.IsPostBack)
            {//回传
                string csspath = String.Empty;
                switch (Favorite)
                {
                    case "2":
                        csspath = "red.css";
                        break;
                    case "1":
                        csspath = "blue.css";
                        break;
                }
                link.Attributes.Add("href", csspath);
            }
            else if(!Page.IsPostBack)
            {//不回传
                string csspath = String.Empty;
                switch(Favorite)
                {
                    case "1":
                        csspath = "red.css";
                        break;
                    case "2":
                        csspath = "blue.css";
                        break;
                }
                link.Attributes.Add("href", csspath);
            }
            this.Controls.Add(link);
        }

    在Default.cs设计中双击DropDownList
        protected void ddpFavorite_SelectedIndexChanged(object sender, EventArgs e)
        {
            //获取列表控件中选定的值
            Favorite = this.ddpFavorite.SelectedValue;
        }
    }
    按Ctrl+F5运行,Ok!简单的一个根据选择,背景风格css转换就完成了!

     
     
     
     
     
     
  • 相关阅读:
    RTSP协议转RTMP协议的行业视频接入网关EasyRTSPLive如何实现音频转码的
    RTSP协议转RTMP协议的行业视频接入网关EasyRTSPLive之跨平台ini配置及通道的方法
    GB/T28181协议EasyGBS播放1080p视频直播会花屏
    国标GB/T28181协议下播放器起播慢或者延迟高如何解决?
    EasyGBS查找大华设备的录像列表时失败
    ffmpeg增加h264编解码功能模块方法
    EasyNVR控制台运行出现invalid license关于计算机保护软件类似于360、腾讯云管家等限制相关问题
    摄像机经过多级路由转换无法被EasyNVR拉流问题处理方法
    使用EasyNVR软件对接海康摄像头对接失败问题解析
    GB/T28181协议使用EasyNVR降低播放延迟方法
  • 原文地址:https://www.cnblogs.com/scsuns520/p/1630952.html
Copyright © 2020-2023  润新知