como saber si un objeto es un listbox o un checkbox

01/06/2005 - 16:41 por sergiño | Informe spam
tengo un bucle que recorre todos los controles que posee un panel. el caso es
que son 5 checkbox y un listview, el bucle para recorre el panes es este.

For Each chk As Object In Me.PanelPrioridad.Controls
'quiero haga lo de abajo solo si es un checkbox.
dim s as string = chk.Text
dsc.tables(tconfiguracion).rows(0)(s) = chk.Checked
Next
he probado con el IS con el Equal pero no encontrar la manera de distinguir
un objeto por codigo.
Espero haberme explicado bien, en el fondo solo quiero saber si existe
alguna manera de preguntar a un objeto, que de que tipo de clase proviene.
 

Leer las respuestas

#1 Valdov
01/06/2005 - 16:53 | Informe spam
Const strTextbox As String = "System.Windows.Forms.TextBox"

Const strCombobox As String = "System.Windows.Forms.ComboBox"

Const strLabel As String = "System.Windows.Forms.Label"

Const strPanel As String = "System.Windows.Forms.Panel"

Const strRadioButton As String = "System.Windows.Forms.RadioButton"

Const strButton As String = "System.Windows.Forms.Button"

Const strDateTimePicker As String = "System.Windows.Forms.DateTimePicker"

Const strCheckBox As String = "System.Windows.Forms.CheckBox"

Const strListBox As String = "System.Windows.Forms.ListBox"



Friend Sub Controles(ByVal objContenedor As Object)

Dim intI As Long

Try

For intI = 0 To objContenedor.Controls.Count - 1

Select Case
objContenedor.Controls.Item(intI).GetType.ToString

Case strTextbox

msgbox ("Soy un Texbox")

Case strCombobox

msgbox ("Soy un combo")

Case strDateTimePicker

msgbox("Soy un Date Time Picker")

Case strButton

msgbox ("Soy un Boton")

Case strCheckBox

msgbox("Soy un CheckBox")

Case strListBox

msgbox("Soy un ListBox")

Case strPanel

Call Controles(objContenedor.Controls.Item(intI))

End Select

Next

Catch Ex As Exception

MsgBox(Ex.Message, MsgBoxStyle.Exclamation + MsgBoxStyle.OKOnly,
Ex.Source)

End Try

End Sub


Valdov
Id Msn Messenger:




"sergiño" escribió en el mensaje
news:
tengo un bucle que recorre todos los controles que posee un panel. el caso
es
que son 5 checkbox y un listview, el bucle para recorre el panes es este.

For Each chk As Object In Me.PanelPrioridad.Controls
'quiero haga lo de abajo solo si es un checkbox.
dim s as string = chk.Text
dsc.tables(tconfiguracion).rows(0)(s) = chk.Checked
Next
he probado con el IS con el Equal pero no encontrar la manera de
distinguir
un objeto por codigo.
Espero haberme explicado bien, en el fondo solo quiero saber si existe
alguna manera de preguntar a un objeto, que de que tipo de clase proviene.

Preguntas similares