ASP.NET マスター ページ コンテンツ ページの要素はすべて、ASP.NET ページ レンダラーによって ID が変更されているか先頭に追加されているようです。
これにより、元の要素 ID に基づくすべての CSS スタイルが壊れます。
これは真剣に機能する方法ですか?もしそうなら、それを回避する方法はありますか?
ASP.NET マスター ページ コンテンツ ページの要素はすべて、ASP.NET ページ レンダラーによって ID が変更されているか先頭に追加されているようです。
これにより、元の要素 ID に基づくすべての CSS スタイルが壊れます。
これは真剣に機能する方法ですか?もしそうなら、それを回避する方法はありますか?
ClientIDMode
はい、静的に設定するように指定できます。
例:
クライアント側
<asp:TextBox ID="TextBox1" runat="server" ClientIDMode="Static"></asp:TextBox>
コードビハインド
TextBox txtBox = new TextBox();
txtBox.ID = "TextBox1";
txtBox.ClientIDMode = ClientIDMode.Static
静的に設定することで...
ClientID 値は、ID プロパティの値に設定されます。コントロールが名前付けコンテナーである場合、そのコントロールは、それに含まれるすべてのコントロールの名前付けコンテナーの階層の最上位として使用されます。
追加情報については、 @Chris Livelyに感謝します。
ページレベル
<%@ Page Language="C#" ClientIDMode="Static" AutoEventWireup="true"...
アプリケーションレベル
<system.web>
<pages clientIDMode="Static"></pages>
</system.web>
参照:
ClientID
プロパティの代わりにプロパティを使用する必要があると思いますID
。
ドキュメント: http://msdn.microsoft.com/en-us/library/system.web.ui.control.clientid.aspx