ASP.NETには、ロゴのスキニングのサポートが組み込まれていますか?
質問
単なる例としてロゴを使用しています。
ASP.NETで初めてテーマ/スキンを使用しようとしています-そして、それらが私にできることを正確に把握しようとしています。
テーマを伝えることができる限り、主にボタンなどのコントロールを変更するためのもので、画像を使用して変更できます。しかし、テーマを使用して「ロゴ」または他のグラフィックスのスキンを作成する方法はありますか?ドキュメントを読んで、すぐにそうする方法を見ることができませんでした。
解決
テーマ/スキンを使用して画像/ロゴを簡単に設定できます。例えば。次のような画像コントロールがある場合:
<asp:Image id="imgLogo" runat="server" SkinId="logo" ... />
スキンファイルで、表示する画像を指定できます。 App_Themes / theme1 / logo.skin ::
<asp:Image runat="server" SkinId="logo" ImageUrl="~/images/logo1.png" />
そしてApp_Themes / theme2 / logo.skinで:
<asp:Image runat="server" SkinId="logo" ImageUrl="~/images/logo2.png" />
これはImageUrlプロパティに限定されません。スキンファイルからコントロールのほとんどのプロパティを設定できます。
他のヒント
最近、ASP.netテーマを使用して、ユーザーをサイトに送信したアフィリエイトに応じて、さまざまなロゴやその他の画像を使用して動的にブランド化されたサイトを作成しました。これはあなたが何をしようとしているように聞こえます。これを達成するために、次のことを行いました。
- CSSや画像を含むいくつかのテーマを作成しました(スキンファイルは使用しませんでした)。 CSSで相対参照を使用して、テーマフォルダーに保存されている背景画像を表示できます。
- OnPreInitイベントをオーバーライドし、Page.Themeを使用する必要があると判断したテーマに設定する独自のページクラスを作成しました。これは私にとってはCookieに基づいていますが、ユーザーを識別する方法に基づいている可能性があります。
- すべてのページが新しいページクラスを継承していることを確認してください。
テーマを使用すると、イメージASP.NETコントロールのソースをテーマごとに異なるものに簡単に設定できます。 (サイズが異なる場合も)。
テーマの概要: http://msdn.microsoft.com/en- us / library / ykzx33wh.aspx
所属していません StackOverflow