C#クラスでaspコントロールのスキンを変更しようとすると、次のエラーが発生します。
'SkinId'プロパティは、静的コントロールのPage_PreInitイベント内またはその前にのみ設定できます。動的コントロールの場合は、プロパティをControlsコレクションに追加する前に設定します。
私の目標は、すべてのページでパネルを提供し、それをID = "response"と呼び、CSSクラスをErrorからSuccess、またはSuccess to Error(つまり、赤または緑)に動的に変更することです。また、応答が作成されるときに、それをvisible=trueにします。
どうやら、私はこれが機能する唯一の方法であるCssClass属性を使用することを余儀なくされています。
補足として: PHPでは、別の「pre-init」「post-init」などを使用しても問題はありません。完全に不要なプロセスです。ユーザーに送り返す前に、HTMLを変更するだけです。ASP.NETがすべてを過度に複雑にすることを決定した理由は少し混乱しています。単にウェブページを表示するためにこれらのさまざまな複雑なプロセスをすべて学ぶのに時間をかけるのは少しばかげています。マイクロソフトで読みにくいASPライフサイクルドキュメントに書かれているすべての癖を学ぶには時間がかかります。マイクロソフトの人々を侮辱することはありませんが、それは実際的ではありません。