Asumiré que la pregunta se refiere a la tecnología
Windows Forms, en ese caso:
abria una forma de pintar el formulario anterior "FOrm1" de color plomo o gris mientras el Form2 esta abierto?
Para los controles puedes usar la misma propiedad,
Control.BackColor (aunque, no en todos los controles, ya que el aspecto y color de algunos, como por ejemplo un
Button se define mediante el estilo visual aplicado en Windows, y para personalizarlo tendrías que modificar el aspecto visual del control a "Flat", o heredar la clase del control y pintarlo desde cero por ti mismo).
Ejemplo:
Private Sub Form1_EnabledChanged(sender As Object, e As EventArgs) Handles MyBase.EnabledChanged
Dim f As Form = DirectCast(sender, Form)
If (f.Enabled) Then
f.BackColor = Form.DefaultBackColor
Else
f.BackColor = SystemColors.GrayText
End If
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Me.Enabled = False
Dim result As DialogResult = Form2.ShowDialog()
Me.Enabled = True
End Sub
PD: modifica los colores a tu antojo.
Saludos.