- - PR -
ascxをコードビハインド側でTextBoxと同じように扱う方法
1
投稿者 | 投稿内容 | ||||||||
---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2005-09-22 07:23
aspxからascxをインクルードすることができますが、ascxをコードビハインドのソース上で
TextBoxやLabelと同じように扱うにはどのような手続きが必要なのでしょうか? ttp://www.atmarkit.co.jp/fdotnet/dotnettips/219aspcmnparts/aspcmnparts.html や ttp://ja.gotdotnet.com/quickstart/aspplus/doc/webpagelets.aspx を見ながらサンプルを作ったのですが、どうしてもエラーになってしまいます。 実現させたいのは ascxの画面をvisibleをtrue・falseを動的に行って、表示・非表示を行いたい ascxの画面内のコントロール(TextBoxやLabel)に対してincludeしているaspx側のコードビハインドで、値を設定したり、表示・非表示させたりしたい 同様に、ascxの画面内のコントロール(Repeater)に対して表示するセル?を動的にさせたい です。 ascxの画面を表示・非表示、ascxのコントロール(TextBoxやLabel)に対して値を設定はどうしてもやらなければなりません。 | ||||||||
|
投稿日時: 2005-09-22 09:21
タクマンさん、お早うございます。
ちょっと待って下さい。インクルードしてるんですか? VisualStudo を使用して開発しているのであれば、MSDNライブラリもお手元にあるのではないかと思いますが、その中の「Visual Basic および Visual C# の概念」-「チュートリアル : Web ユーザー コントロールの作成」というドキュメントに、ascx=ユーザーコントロール を使用する手順が説明されています。 | ||||||||
|
投稿日時: 2005-09-22 09:40
こんにちは。
まさにそのまま。Visible を true・false すると動的に表示・非表示します。
これは直接は無理(出来ない事もないが)なので、ユーザコントロールが、そのためのメソッドやプロパティを公開するとよいでしょう。 | ||||||||
|
投稿日時: 2005-09-22 20:24
>きくちゃんさん
正確にはインクルードではありませんよ。 イメージしやすいようにインクルードと書きました。 参考文献の紹介ありがとうございます。 >囚人さん visibleのtrue・falseで可能だということはわかりました。 ascx内でpublicなメソッドを用意してsetさせることが出来れば出来ないことはないように思います。 イメージと実際の実行結果が結びつかないんですよね。 | ||||||||
|
投稿日時: 2005-09-23 01:41
こんにちは。
コントロールが「何を表現しているか」によると思います。 例えば、Calendar コントロールはどうでしょう。 Calendar はテーブルやらリンクやらで出来ていますが、使う側からしたら、「日付10を担当しているリンクボタンが押された」ではなく、「カレンダーコントロールの日付10が押された」と判断したいですよね。 「カレンダーコントロールの月の表示を担当しているラベルを10月に変える」より、「カレンダーコントロールのタイトルを10月に変える」の方が良いように思います。 ただ単純にコントロール群をグルーピングするために、ユーザーコントロールを使うのではなく(もちろんそうすべき要件もあると思いますが)、「何を表現するユーザーコントロールなのか」を明確にすれば、イメージと実際の実行結果に何か関連付けさせることは出来ないでしょうか。 | ||||||||
|
投稿日時: 2005-09-24 06:21
誰にとって? 分類としては MVP for ASP/ASP.NET ですが、ASP のことは全く知らない私にとって、「インクルード?ASP.NET でそんなことできたっけ?」なんですけど... 私にとっては「貼り付ける」のほうがイメージしやすかったです。というか、操作もそのままだし。 ということで、より一般的、マニュアルに記載されている言葉を使う方が、掲示板では伝わりやすい=的確な返答を受けやすいです。
これが何を意味しているのか、よくわかりませんでした。 たとえば、TextBox に入力するのが「検索文字列」であれば、"SearchString"というプロパティを用意して、TextBox.Text の値を入出力すればいいのでは? あと、Visible = false だと、HTML に出力されませんから、その辺はご注意を。 _________________ |
1