プロが教えるわが家の防犯対策術!

aspxにてVBAのようなEXECUTEメソッドは?
お世話になります。
aspxにてVBAのようなEXECUTEやVBScriptのようなEVALを扱いたいのです。
vb内にて

If num = 1 Then
Inq1.Src = "gazou/Inq-11.gif"
Else
Inq1.Src = "gazou/Inq-10.gif"
End If
If num = 2 Then
Inq2.Src = "gazou/Inq-21.gif"
Else
Inq2.Src = "gazou/Inq-20.gif"
End If
If num = 3 Then
Inq3.Src = "gazou/Inq-31.gif"
Else
Inq3.Src = "gazou/Inq-30.gif"
End If
If num = 4 Then
Inq4.Src = "gazou/Inq-41.gif"
Else
Inq4.Src = "gazou/Inq-40.gif"
End If
If num = 5 Then
Inq5.Src = "gazou/Inq-51.gif"
Else
Inq5.Src = "gazou/Inq-50.gif"
End If

という上記内容を
Dim Inq(5) As String
For i As Integer = 1 To 5
If i = num Then
Eval("Inq" & i & ".src = gazou/Inq-" & i & "1.gif" --------*
Else
Eval("Inq" & i & ".src= gazou/Inq-" & i & "0.gif" --------*
End If
Next
のようにするには-------*をどのような文にすればよいでしょうか?
よろしくお願いします。

A 回答 (1件)

Inq ってのが何を指して、どういう状態にあるのかわからないので、TextBox にたとえて勝手に書きます。


ちなみに Windows フォームで実験してます。
フォーム上に TextBox1 ~ TextBox5 が既に配置されています。

Dim textBoxes() As System.Windows.Forms.TextBox
Dim num As Integer = 3
textBoxes = New System.Windows.Forms.TextBox(4) {Me.TextBox1, Me.TextBox2, Me.TextBox3, Me.TextBox4, Me.TextBox5}
For i = 1 To textBoxes.Length
  If i = num Then
    textBoxes(i - 1).Text = "gazou/Inq-" & i & "1.gif"
  Else
    textBoxes(i - 1).Text = "gazou/Inq-" & i & "0.gif"
  End If
Next
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。

配列に変換するところまでは理解できました。
textBoxes = New System.Windows.Forms.TextBox(4) {Me.TextBox1, Me.TextBox2, Me.TextBox3, Me.TextBox4, Me.TextBox5}
の部分をWEBページに相当させるのがまだできません。
<img id="TextBox1" runat="server" src="gazou/Inq11.gif">
のタグがあったとした場合
textBoxes = New ArrayList(4) {TextBox1, TextBox2, TextBox3, TextBox4, TextBox5}
のようにするには
ArrayListではないのはわかりますが、一体何なのでしょうか。

お礼日時:2010/03/13 14:10

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!