ASPX ファイル内のコントロールの ID をプログラムで編集するのは間違っていますか?
たとえば、次のように定義された aspx ページがあるとします。
<div runat="server" ID="id1" ClientIDMode="Static">
コード ビハインド ファイルの page_load() で次の操作を行った場合、問題は発生しますか。
Control c = Page.FindControl("id1");
c.ID = "id2";
これを行ってもエラーは発生しません。上記のコードを使用して問題が発生する可能性があるかどうかを知りたいだけです。
なぜ ID を変更する必要があるのかと聞かれるかもしれませんが、その答えは、上記の要素を含む MasterPage があるからです。このマスターページを使用する各コンテンツ ページには、その div に個別の ID が必要です。これは、その ID が css ファイルのセレクターとして使用されるためです。
別の質問は次のとおりです。MSDN から「英数字とアンダースコア文字 ( _ ) の組み合わせのみがこのプロパティの有効な値である」と読みました。これは、プログラムで割り当てられた ID ではなく、aspx ページで ID を指定するときの制限にすぎないと私は考えています。誰でも確認できますか?
どうもありがとう