Ver Mensaje Individual
  #3 (permalink)  
Antiguo 13/05/2014, 13:12
vistaero
 
Fecha de Ingreso: noviembre-2009
Mensajes: 67
Antigüedad: 15 años
Puntos: 2
Respuesta: Mostrar/ocultar elementos en formulario vb

Creo que se refiere a ocultar controles en tiempo de diseño, y creo que aunque haga un panel con los controles dentro, no se puede ocultar nada en tiempo de diseño.

De todas formas creo que la necesidad de ocultar controles en tiempo de diseño se puede evitar elaborando un diseño diferente para el formulario.

O también podrías poner los botones en otro lugar que no te molesten durante el tiempo de diseño, y luego moverlos en tiempo de ejecución.

Por ejemplo: Button1.Location = New Point(100, 200)

Donde 100 sería la coordenada X y 200 las coordenada Y.

También se me ocurre otra solución:

Haces dos paneles, Conjunto1 y Conjunto2, en cada panel metes los controles que sean, pensando en que en tiempo de ejecución sólo se verá uno.

Haces otro panel, al que llamaremos Contenedor, y dentro metes a Conjunto1 y Conjunto2. A estos dos últimos, además, les estableces la propiedad Dock en, por ejemplo, Left. Y así se queda uno pegado al lado del otro.

Por último, haces un botón y le pones este código:

Código VB.NET:
Ver original
  1. Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
  2.         If Conjunto1.Visible = True Then
  3.             Conjunto1.Visible = False
  4.  
  5.             With Conjunto2
  6.                 .Visible = True
  7.                 .Dock = DockStyle.Fill
  8.             End With
  9.         ElseIf Conjunto2.Visible = True Then
  10.             Conjunto2.Visible = False
  11.             With Conjunto1
  12.                 .Visible = True
  13.                 .Dock = DockStyle.Fill
  14.  
  15.             End With
  16.  
  17.         End If
  18.     End Sub

Básicamente consiste en que si un panel es visible, que deje de serlo, y que sea visible el otro. Además les establece la propiedad Dock en Fill para que el panel en cuestión pase a ocupar todo el tamaño que ocupa el panel "Contenedor".

Te dejo un ejemplo que acabo de hacer: https://mega.co.nz/#!Jg412CzB!RJlTMz...Oi8aKSouW52448