VB.Net Tutorial/GUI/Controls on Form

Материал из VB Эксперт
Перейти к: навигация, поиск

Get all controls on a form and check type

<source lang="vbnet">Imports System.Windows.Forms Imports System.Drawing Imports System.Drawing.Drawing2D public class GetAllControlsOnForm

  public Shared Sub Main
       Application.Run(New Form1)
  End Sub

End class

Public Class Form1

   Private Sub ActRed_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ActRed.Click
       For Each scanControls As Control In Me.Controls
           If (TypeOf scanControls Is Label) Then
               scanControls.BackColor = Color.Red
           End If
       Next scanControls
   End Sub
   Private Sub ActNormal_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ActNormal.Click
       For Each scanControls As Control In Me.Controls
           If (TypeOf scanControls Is Label) Then
               scanControls.BackColor = SystemColors.Control
           End If
       Next scanControls
   End Sub

End Class

<Global.Microsoft.VisualBasic.rupilerServices.DesignerGenerated()> _ Partial Class Form1

   Inherits System.Windows.Forms.Form
   "Form overrides dispose to clean up the component list.
   <System.Diagnostics.DebuggerNonUserCode()> _
   Protected Overrides Sub Dispose(ByVal disposing As Boolean)
       If disposing AndAlso components IsNot Nothing Then
           components.Dispose()
       End If
       MyBase.Dispose(disposing)
   End Sub
   "Required by the Windows Form Designer
   Private components As System.ruponentModel.IContainer
   "NOTE: The following procedure is required by the Windows Form Designer
   "It can be modified using the Windows Form Designer.  
   "Do not modify it using the code editor.
   <System.Diagnostics.DebuggerStepThrough()> _
   Private Sub InitializeComponent()
       Me.Label1 = New System.Windows.Forms.Label
       Me.ActRed = New System.Windows.Forms.Button
       Me.Label2 = New System.Windows.Forms.Label
       Me.Label3 = New System.Windows.Forms.Label
       Me.ActNormal = New System.Windows.Forms.Button
       Me.SuspendLayout()
       "
       "Label1
       "
       Me.Label1.AutoSize = True
       Me.Label1.Location = New System.Drawing.Point(8, 8)
       Me.Label1.Name = "Label1"
       Me.Label1.Size = New System.Drawing.Size(39, 13)
       Me.Label1.TabIndex = 0
       Me.Label1.Text = "Label1"
       "
       "ActRed
       "
       Me.ActRed.Location = New System.Drawing.Point(16, 88)
       Me.ActRed.Name = "ActRed"
       Me.ActRed.Size = New System.Drawing.Size(75, 23)
       Me.ActRed.TabIndex = 1
       Me.ActRed.Text = "Red"
       Me.ActRed.UseVisualStyleBackColor = True
       "
       "Label2
       "
       Me.Label2.AutoSize = True
       Me.Label2.Location = New System.Drawing.Point(8, 32)
       Me.Label2.Name = "Label2"
       Me.Label2.Size = New System.Drawing.Size(39, 13)
       Me.Label2.TabIndex = 2
       Me.Label2.Text = "Label2"
       "
       "Label3
       "
       Me.Label3.AutoSize = True
       Me.Label3.Location = New System.Drawing.Point(8, 56)
       Me.Label3.Name = "Label3"
       Me.Label3.Size = New System.Drawing.Size(39, 13)
       Me.Label3.TabIndex = 3
       Me.Label3.Text = "Label3"
       "
       "ActNormal
       "
       Me.ActNormal.Location = New System.Drawing.Point(104, 88)
       Me.ActNormal.Name = "ActNormal"
       Me.ActNormal.Size = New System.Drawing.Size(75, 23)
       Me.ActNormal.TabIndex = 4
       Me.ActNormal.Text = "Normal"
       Me.ActNormal.UseVisualStyleBackColor = True
       "
       "Form1
       "
       Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
       Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
       Me.ClientSize = New System.Drawing.Size(292, 127)
       Me.Controls.Add(Me.ActNormal)
       Me.Controls.Add(Me.Label3)
       Me.Controls.Add(Me.Label2)
       Me.Controls.Add(Me.ActRed)
       Me.Controls.Add(Me.Label1)
       Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedSingle
       Me.MaximizeBox = False
       Me.Name = "Form1"
       Me.Text = "Iterating Controls"
       Me.ResumeLayout(False)
       Me.PerformLayout()
   End Sub
   Friend WithEvents Label1 As System.Windows.Forms.Label
   Friend WithEvents ActRed As System.Windows.Forms.Button
   Friend WithEvents Label2 As System.Windows.Forms.Label
   Friend WithEvents Label3 As System.Windows.Forms.Label
   Friend WithEvents ActNormal As System.Windows.Forms.Button

End Class</source>