一般に、マスター ページにテーマを適用できないことはわかっています。しかし、そうするためのトリックや方法があるのではないかと思っていました。私の状況では、これらをサイト全体に適用するのではなく、アプリケーションにのみ適用したいと考えています。アプリケーションには多くのページがあるため、手動ではできません。私の状況では、ページ クラスを継承することもできません。任意の提案をお願いします。このプロジェクトは Asp.net 3.5 にあります
ありがとう
一般に、マスター ページにテーマを適用できないことはわかっています。しかし、そうするためのトリックや方法があるのではないかと思っていました。私の状況では、これらをサイト全体に適用するのではなく、アプリケーションにのみ適用したいと考えています。アプリケーションには多くのページがあるため、手動ではできません。私の状況では、ページ クラスを継承することもできません。任意の提案をお願いします。このプロジェクトは Asp.net 3.5 にあります
ありがとう
どうやら、基本クラスから継承できない場合にプログラムでこれを行う唯一の方法は、HTTP モジュールを使用することです。
説明については、次のブログを確認してください: Set the Theme for a MasterPage (from code)
あなたの場合、ページのテーマを設定する前に、まずページのマスター ページを確認する必要があります。
このコードを Global.asax ファイルに追加できます。
void Application_PreRequestHandlerExecute(object src, EventArgs e)
{
Page p = this.Context.Handler as Page;
if (p != null)
{
p.PreInit += (s, ev) =>
{
DevExpress.Web.ASPxClasses.ASPxWebControl.GlobalTheme = "Aqua";
};
}
}