思路一:在master页面插入一个单独的.ascx(自定义控件的页面),然后在.ascx中拉一个dropdownlist控件,添加dropdownlist的item项,然后通过选择不同的item项,改变网页主题。思路二:在嵌入master的content.aspx页面,然后在.aspx中拉一个dropdownlist控件,添加dropdownlist的item项,
然后通过选择不同的item项,改变网页主题。部分代码为: 
<asp:Label ID="Label2" runat="server" Font-Size="0.8em" SkinID="label" Text="请选择风格: Width="70px">
</asp:Label><asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="True" meta:resourcekey="colorlist"
                            OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged" Width="107px">
                            <asp:ListItem Value="MSN_Blue">天际蓝</asp:ListItem>
                            <asp:ListItem Value="MSN_Morning">咖啡橙</asp:ListItem>
                            <asp:ListItem Value="MSN_Purple">妖艳紫</asp:ListItem>
                            <asp:ListItem Value="MSN_Finance">苹果绿</asp:ListItem>
                            <asp:ListItem Value="MSN_CherryBlossom">淡雅红</asp:ListItem>
                            <asp:ListItem Value="WinXP_Silver">月光银</asp:ListItem>
                        </asp:DropDownList><br />
value是我做的App_Themes文件里面的不同主题,
现在问题是:如何使在dropdownlist控件选择了一个item项后,能将它应用到整个网站??(非单个页面)我想到一个方法是:自己写一个myPage类,(公共类)继承自 System.Web.UI.Page 所有页面类都继承myPage,在myPage类中重写Page的Page_PreInit方法,根据用户的选择为网站全部页面更换主题~~
public class mypage: System .Web .UI .Page 
{    private void Page_PreInit(object sender, System.EventArgs e)
    {
  ???????
   }
}但现在问题是:Page_PreInit(object sender, System.EventArgs e)函数不知道写??
而且,在web.config配置文件中怎么写节点,我默认写节点是:
<system.web>
.......
  <pages styleSheetTheme="MSN_Blue" />  //“MSN_Blue”是默认主题。</system.web>