* "Doug Bell" <dug@bigpond> scripsit:
Is the best simplest visual to use multiple picture boxes that are
sequentially made visible or could I use one picture box and change the
image it displays?
If the later then can I have it display sequetial Icons from within the
application rather than loading from files (which I think will be slow).
And could you please point me in the direction of refering to controls from
the collection
i.e. something like
For intn = 1 to 4
stCnl="PictBox" & intn
me.Form.Control(stCnl).Visible = me.Form.Controls.Name = stCnl
next intn
From my FAQ (<URL:http://dotnet.mvps.org/dotnet/faqs/>):
\\\
Private Function FindControl( _
ByVal ControlName As String, _
ByVal CurrentControl As Control _
) As Control
Dim ctr As Control
For Each ctr In CurrentControl.Controls
If ctr.Name = ControlName Then
Return ctr
Else
ctr = FindControl(ControlName, ctr)
If Not ctr Is Nothing Then
Return ctr
End If
End If
Next ctr
End Function
///
Usage:
\\\
DirectCast(FindControl("Button1", Me), Button).Enabled = False
///
Notice that the procedure listed above is "slow", if you have to access a
lot of controls by name very often, you should store references to them in a
'Hashtable' object. You can use the name of the control as key:
\\\
Private m_Controls As New Hashtable()
///
Adding a control:
\\\
Dim DynamicPictureBox As New PictureBox()
DynamicPictureBox.Name = "PictureBox1"
m_Controls.Add(DynamicPictureBox.Name, DynamicPictureBox)
///
Looking for a control:
\\\
Dim p As PictureBox = DirectCast(m_Controls.Item("PictureBox1"), PictureBox)
///
Removing a control:
\\\
m_Controls.Remove("PictureBox1")
///
Sometimes it's even better to add the control to an array. This will allow
fast and easy index-based access to the control references:
\\\
Dim MyLabels() As Label = {Label1, Label2, ..., Label10}
///
Access by 'MyLabels(0)' to 'MyLabels(9)'.
Control arrays:
Control arrays, as known from VB6, are not included in VB.NET 2002/2003.
Creating Control Arrays in Visual Basic .NET and Visual C# .NET:
<URL:http://msdn.microsoft.com/library/en-us/dv_vstechart/html/vbtchCreatingControlArraysInVisualBasicNETVisualCN ET.asp>
WinForms Controls--Creating Control Arrays in VB.NET
<URL:http://www.devx.com/vb2themax/Article/19907/>
--
M S Herfried K. Wagner
M V P <URL:http://dotnet.mvps.org/>
V B <URL:http://dotnet.mvps.org/dotnet/faqs/>