asp.net C# で、ページの読み込み時にテーマを変更したいのですが、このアクションには、Masterpage にはない PreInit イベントが必要です。その問題の解決策は何ですか?
ありがとう、
asp.net C# で、ページの読み込み時にテーマを変更したいのですが、このアクションには、Masterpage にはない PreInit イベントが必要です。その問題の解決策は何ですか?
ありがとう、
モジュールとは別に、PreInitを定義し、それに応じてテーマを設定するベースページからすべてのページを継承することを検討できます。
コメントのために編集します。
それほど多くはありません。作成するページがBasePage
、デフォルトのPage
クラスではなく、以下のクラスと同様のクラスから継承されていることを確認してください。設定する必要があります。
public class BasePage : Page
{
public BasePage()
{
this.PreInit += new EventHandler(BasePage_PreInit);
}
protected void BasePage_PreInit(object sender, EventArgs e)
{
this.Page.Theme = theme; //Garner from appropriate resource
}
}
お役に立てば幸いです。
1 つの方法は、 Http モジュールを作成することです(Rick van den Bosch ブログ)。