- - PR -
htmlコントロールの属性設定について
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2008-06-14 13:57
こんにちわ。今日も物造りしてます(汗)
コードビハインドでプログラム(webフォーム)を作成しています。 サーバーサイドでhtmlコントロールの属性を設定しようとしているのですが、 上手くいきません。webコントロールだと上手くいくので違いがあるのでしょうか? 宜しくお願いします。 ----------------------------------------------------------- ※実行後のHTMLに属性が追加されない×(HTMLコントロール) //HTMLの<td>タグの設定 HtmlTableCell tdTagName = new HtmlTableCell("HeaderTD"); tdTagName.Attributes["bgcolor"] = "#FF0000"; ※実行後のHTMLに属性が追加される○(Webコントロール) this.CheckBoxNoCheck.Attributes["onclick"] = "NoValidate(this);"; ---------------------------------------------------------- | ||||||||
|
投稿日時: 2008-06-14 18:22
「上手くいかない」と仰っているのは、本当に属性が追加されないからですか?
1点目: コードビハインド内でページにコントロールを追加するには、Page に Panel などを先に配置したうえで、その Controls プロパティに追加してあげる必要があります。 # Page の Controls でも一応追加できますが、 </html> の後に追加されちゃいます 2点目: ページに追加されたとしても、上記のコードで追加されるものは
というHTMLになると思いますので、お望みの結果ではないでしょう。
てな感じでうまくいくと思います。 # ホントは HtmlTable とか HtmlTableRow などをアレコレ追加しないと、テーブルとしては不自然ですが | ||||||||
|
投稿日時: 2008-06-14 19:41
rainさん 回答ありがとう御座います!
そう言えばPanelコントロールありましたね、そんなの(爆) しかも new HtmlTableCell("xxx") すると新しいxxxタグを生成するんですね。 気づいていませんでした。。。 なるほど、ということは Panel コントロールの中に tableタグから きれいにそろえて生成しなきゃいけないですね。 理解しました、ありがとう御座いました。 |
1