- - PR -
複数コントロールのループ処理
投稿者 | 投稿内容 | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-01-18 16:55
Katze様、さかもと様、じゃんねねっと様 返信ありがとうございます。 記入洩れですみません、Webフォームです。 項目100個は例えでして・・・。 ただ、実際は40個のチェックボックスがあります 早速Katze様のサンプルを参考に WebMatrixで確認してみたのですが BC30684: 'CheckBox' は型であるため、式として使用することはできません。 となってしまいました。 ソースは以下としております。 まずい点ありますでしょうか。 Sub Page_Load(sender As Object, e As EventArgs) If Not Page.IsPostBack Then Dim wCtrlCheckBox As CheckBox Dim i As Integer For i = 1 to 100 wCtrlCheckBox = CType(FindControl("CheckBox" & Trim(i.ToString), CheckBox)) If (Not IsNothing(wCtrlCheckBox)) Then wCtrlCheckBox.Visible = False End If Next End If End Sub Sub Button1_Click(sender As Object, e As EventArgs) Dim wCtrlCheckBox As CheckBox Dim i As Integer For i = 1 to 100 wCtrlCheckBox = CType(FindControl("CheckBox" & Trim(i.ToString), CheckBox) If (Not IsNothing(wCtrlCheckBox)) Then wCtrlCheckBox.Visible = False End If Next End Sub どうぞよろしくお願い致します。 | ||||||||||||
|
投稿日時: 2006-01-18 16:59
ここ、おかしいですよね? リファレンスを見てみましょう。 FindControl メソッド どうなっていますか? _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||||||
|
投稿日時: 2006-01-18 17:07
すいません,先に記述した例が間違ってました。
括弧がひとつ足りません。 wCtrlCheckBox = CType(FindControl("CheckBox" & Trim(i.ToString)), CheckBox) では,どうでしょうか? と書いていたら じゃんぬさん に先を越されてしまった。 じゃんぬさんありがとうございます。 [ メッセージ編集済み 編集者: Katze 編集日時 2006-01-18 17:16 ] | ||||||||||||
|
投稿日時: 2006-01-18 17:24
じゃんぬねっと様、Katze様
成功しました、ありがとうございました。 ちなみにテーブル更新の際のパラメータ定義もこんな感じで 見苦しいのですが、何とかなりますでしょうか?。 Dim p01 As SqlParameter = cmd.Parameters.Add("@p01", SqlDbType.Bit, 1) Dim p02 As SqlParameter = cmd.Parameters.Add("@p02", SqlDbType.Bit, 1) Dim p03 As SqlParameter = cmd.Parameters.Add("@p03", SqlDbType.Bit, 1) ・ ・ ・ Dim p40 As SqlParameter = cmd.Parameters.Add("@p40", SqlDbType.Bit, 1) じゃんぬねっと様 先の返信でユーザーコントロール・・・といったメッセージがありましたが この辺の定義だけ格納しておくこと、これはOKでしょうか。 | ||||||||||||
|
投稿日時: 2006-01-18 17:32
良かったですね。 ただ、FindControl メソッドだとコンパイル解決なされていないため、 本来はユーザーコントロールで対応したり、参照で対応するのが望ましいです。
別の質問は別のスレッドを建てた方が良いと思います。 後から同じ問題で悩んでいる人達のためにもです。 (@IT 会議室は情報共有の場らしいです)
すいません。(*_ _) 「この辺の定義だけ格納しておくこと」の意味はちょっと判りませんでした。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 |