trabajar con controles en vb
DESCRIPTION
Acerca de Trabajar con controles en VB.NETTRANSCRIPT
Trabajar con controles
Descripción
Crear un controlador de eventos para un control
Uso de los controles de los formularios Windows Forms
Uso de los cuadros de diálogo en una aplicaciónWindows Forms
Agregar controles en tiempo de ejecución
Crear menús
Validar introducción de datos de los usuarios
Lección: crear un controlador de eventos para un control
Modelo de eventos del .NET Framework
¿Qué es un controlador de eventos?
La palabra clave Handles
Cómo crear controladores de eventos para eventos de control
Cómo añadir y eliminar controladores de eventos en tiempo de ejecución
Práctica: crear un controlador de eventos para un control
Modelo de eventos del .NET Framework
Button1Private Sub Button1_Click(ByVal Sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Invoca el delegado
DelegadoDelegadoDelegado
Private Sub Button1_Click(ByVal Sender As System.Object, ByVal e As System.EventArgs) HandlesButton1.Click
El delegado invoca el procedimiento asociado
¿Qué es un controlador de eventos?
Controladores de eventosMétodos ligados a un eventoCuando el evento se produce, se ejecuta el código del controlador de eventos
Dos argumentos de eventos con controladores de eventos
Un objeto que representa el objeto que produjo el eventoUn objeto de evento que contiene cualquier información específica del evento
Private Sub Button1_Click (ByVal Sender As System.Object, ByVal e As System.EventArgs)
Private Sub Button1_Click (ByVal Sender As System.Object, ByVal e As System.EventArgs)
La palabra clave Handles
La palabra clave HandlesDeclara que un procedimiento controla un evento específicoPermite especificar controladores de eventos en tiempo de diseño
PartesProcedureDeclaration Eventos
Public Sub Age (ByVal Sender As System.Object, ByVal e As System.EventArgs) Handles Under21.Click, Twenties.Click,
Thirties.Click, Forties.Click, FiftiesPlus.click
Public Sub Age (ByVal Sender As System.Object, ByVal e As System.EventArgs) Handles Under21.Click, Twenties.Click,
Thirties.Click, Forties.Click, FiftiesPlus.click
La rutina puede usar cualquier nombre
La rutina puede usar cualquier nombre
La lista de argumentos debe coincidir con la lista
usual del evento concreto
La lista de argumentos debe coincidir con la lista
usual del evento concreto
Palabra clave HandlesPalabra clave Handles Lista de eventos que controlará esta rutinaLista de eventos que controlará esta rutina
Cómo crear controladores de eventos para eventos de controles
Friend WithEvents Button1 As System.Windows.Forms.Button
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
MessageBox.Show("MyHandler captured the event")
End Sub
Friend WithEvents Button1 As System.Windows.Forms.Button
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
MessageBox.Show("MyHandler captured the event")
End Sub
Utilizar la palabra clave WithEvents para declarar variables de objetos que se utilizarán con la instrucción Handles
Utilizar la palabra clave Handles al final de la declaración del procedimiento
Cómo añadir y eliminar controladores de eventos en tiempo de ejecución
Para asociar un evento a un controlador de eventos en tiempo de ejecución, utilizar la instrucción AddHandler
Para eliminar la asociación de un evento a un controlador de eventos en tiempo de ejecución, utilizar la instrucción RemoveHandler
RemoveHandler Button3.Click, AddressOfProcess1
RemoveHandler Button3.Click, AddressOfProcess1
AddHandler Button3.Click, AddressOf Process1AddHandler Button3.Click, AddressOf Process1
El evento que desea controlar
El evento que desea controlar
La rutina que desea utilizar para controlar el evento
La rutina que desea utilizar para controlar el evento
Seleccionar un control Windows Forms según la función
Controles Windows Forms
Control ButtonBase
CheckboxRadioButton
TreeViewGroupBoxListControls
ComboBoxListBox
ListView
CommonDialogColorDialogFontDialogOpenDialogSaveDialogPrintDialogPageSetupDialogPrintPreviewDialog
StatusBarTrackBarToolBarScrollbarTextBoxBase
TextBoxRichTextBox
ProgressbarPictureBoxScrollableControl
ContainerControlForm
PanelData Controls
DataGrid
Splitter
Cómo utilizar el control StatusBar
Hacer clic en la propiedad Panels y abrir el Editor de coleccionesStatusBarPanelHacer clic en la propiedad Panels y abrir el Editor de coleccionesStatusBarPanel
Añadir un control StatusBar al formularioAñadir un control StatusBar al formulario
Utilizar los botones Agregar y Quitar para añadir y eliminar paneles del control StatusBarUtilizar los botones Agregar y Quitar para añadir y eliminar paneles del control StatusBar
Configurar las propiedades de los paneles individuales Configurar las propiedades de los paneles individuales
Hacer clic en Aceptar para cerrar el cuadro de diálogo y crear los paneles que se han especificadoHacer clic en Aceptar para cerrar el cuadro de diálogo y crear los paneles que se han especificado
En la ventana Propiedades, establecer la propiedad ShowPanelscomo trueEn la ventana Propiedades, establecer la propiedad ShowPanelscomo true
Cómo utilizar el control ListBox
Añadir elementos a ListBoxutilizando la colección ItemsAñadir elementos a ListBoxutilizando la colección Items
Añadir un control ListBox al formularioAñadir un control ListBox al formulario
Configurar las propiedades del control ListBoxConfigurar las propiedades del control ListBox
Cómo utilizar los controles GroupBox y Panel
Agregar otros controles al control contenedor, arrastrando cada uno al panelAgregar otros controles al control contenedor, arrastrando cada uno al panel
Arrastrar un control contenedor (Panel o GroupBox) de la Caja de herramientas a un formularioArrastrar un control contenedor (Panel o GroupBox) de la Caja de herramientas a un formulario
Si se dispone de controles existentes que se desean encerrar en el contenedor, se deben arrastrar a ésteSi se dispone de controles existentes que se desean encerrar en el contenedor, se deben arrastrar a éste
Para mostrar barras de desplazamiento para el control Panel, establecer su propiedad AutoScrollbar en TruePara mostrar barras de desplazamiento para el control Panel, establecer su propiedad AutoScrollbar en True
Para mostrar una leyenda en el GroupBox, establecer su propiedad Text con la leyenda adecuadaPara mostrar una leyenda en el GroupBox, establecer su propiedad Text con la leyenda adecuada
Cómo utilizar los controles ToolBar e ImageList
Para utilizar Para utilizar ToolbarToolbar en un formulario Windows en un formulario Windows FormsForms
Añadir botones al ToolbarAñadir botones al Toolbar
Añadir un control Toolbar desde la Caja de herramientas al formularioAñadir un control Toolbar desde la Caja de herramientas al formulario
Añadir los botones al ToolbarButtonCollectionAñadir los botones al ToolbarButtonCollection
Configurar los botones estableciendo el texto y/o imagenConfigurar los botones estableciendo el texto y/o imagen
Seleccionar cuadros de diálogo en Visual Studio .NET
PrintPreviewDialogPrintPreviewDialogPrintPreviewDialog Muestra el aspecto que tendrá un documento cuando se imprimaMuestra el aspecto que tendrá un documento cuando se imprima
PageSetupDialogPageSetupDialog Configura los detalles de la página para su impresiónConfigura los detalles de la página para su impresión
PrintDialogPrintDialog Selecciona una impresora y determina otras configuraciones relacionadas con la impresiónSelecciona una impresora y determina otras configuraciones relacionadas con la impresión
FontDialogFontDialog Expone las fuentes actualmente instaladas en el sistemaExpone las fuentes actualmente instaladas en el sistema
ColorDialogColorDialog Permite a los usuarios seleccionar un color de la paleta y agregar colores a éstaPermite a los usuarios seleccionar un color de la paleta y agregar colores a ésta
SaveFileDialogSaveFileDialogSaveFileDialog Selecciona los archivos a guardar y la ubicación donde deben guardarseSelecciona los archivos a guardar y la ubicación donde deben guardarse
OpenFileDialogOpenFileDialogOpenFileDialog Permite a los usuarios abrir archivos mediante un cuadro de diálogo preconfiguradoPermite a los usuarios abrir archivos mediante un cuadro de diálogo preconfigurado
Cómo mostrar cuadros de diálogo en una aplicación
Mostrar un cuadro de diálogo Visual Studio .NET preconfiguradoPrivate Sub Button1_Click(ByVal sender as
System.Object,ByVal e as System.EventsArgs)OpenFileDialog1.ShowDialog()
End Sub
Private Sub Button1_Click(ByVal sender as System.Object,ByVal e as System.EventsArgs)OpenFileDialog1.ShowDialog()
End Sub
Private Sub PerformSearch()MessageBox.Show("The search is now complete", _
"My Application", MessageBoxButtons.OKCancel, _ MessageBoxIcon.Asterisk)
End Sub
Private Sub PerformSearch()MessageBox.Show("The search is now complete", _
"My Application", MessageBoxButtons.OKCancel, _ MessageBoxIcon.Asterisk)
End Sub
Mostrar un cuadro de diálogo de mensaje
Propiedad DialogResult
Propiedad DialogResult
Utilizar el valor devuelto por esta propiedad para determinar quéacción ha realizado el usuarioUtilizar el valor devuelto por esta propiedad para determinar quéacción ha realizado el usuario
El valor DialogResult.Cancel indica que el usuario ha hecho clic en el botón CancelEl valor DialogResult.Cancel indica que el usuario ha hecho clic en el botón Cancel
EjemploEjemploEjemplo
La propiedad DialogResult puede establecerse en tiempo de diseño o en tiempo de ejecuciónLa propiedad DialogResult puede establecerse en tiempo de diseño o en tiempo de ejecución
Cómo utilizar la entrada de los cuadros de diálogo
Dim userResponse As DialogResult = OpenFileDialog1.ShowDialog()If userResponse = DialogResult.OK ThenfilePath = OpenFileDialog1.FileName.ToStringMessageBox.Show("You successfully opened: '" & filePath & "'", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1)
Dim userResponse As DialogResult = OpenFileDialog1.ShowDialog()If userResponse = DialogResult.OK ThenfilePath = OpenFileDialog1.FileName.ToStringMessageBox.Show("You successfully opened: '" & filePath & "'", "Success", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1)
Recuperar y utilizar resultados de cuadros de diRecuperar y utilizar resultados de cuadros de diáálogologo
Añadir código para recuperar el valor DialogResultAñadir código para recuperar el valor DialogResult
En la ventana de código, ir al controlador de eventos o el método para el que desea establecer la propiedad DialogResultEn la ventana de código, ir al controlador de eventos o el método para el que desea establecer la propiedad DialogResult
Colección de controles
Colección de controlesRepresenta un colección de objetos de controlUtilizar los métodos Add, Remove y RemoveAt para agregar y eliminar controles de la colección
Form1.Controls.Contains(textbox1)Form1.Controls.Contains(textbox1)
Form1.Controls.Remove(textbox1)Form1.Controls.Remove(textbox1)
Form1.Controls.Add(textbox1)Form1.Controls.Add(textbox1)
Utilizar el método Contains para determinar si un control forma parte o no de una colección
Cómo agregar controles en tiempo de ejecución
Para agregar controles en tiempo de ejecuciPara agregar controles en tiempo de ejecucióónn
Crear el control que se agregará al contenedorCrear el control que se agregará al contenedor
Dim signatureCheckBox As New CheckBox()
' set properties
signatureCheckBox.Left = 24
signatureCheckBox.Top = 80
signatureCheckBox.Text = "Signature required"
Dim signatureCheckBox As New CheckBox()
' set properties
signatureCheckBox.Left = 24
signatureCheckBox.Top = 80
signatureCheckBox.Text = "Signature required"
Añadir el control al contenedor utilizando el método Add de la propiedad ControlsAñadir el control al contenedor utilizando el método Add de la propiedad Controls
' add the new control to the collection
GroupBox1.Controls.Add(signatureCheckBox)
' add the new control to the collection
GroupBox1.Controls.Add(signatureCheckBox)
Cómo agregar un menú contextual a un formulario
Para aPara aññadir controles en tiempo de ejecuciadir controles en tiempo de ejecucióónn
Asociar el menú contextual a un formulario o a un control estableciendo la propiedad ContextMenu de ese objetoAsociar el menú contextual a un formulario o a un control estableciendo la propiedad ContextMenu de ese objeto
En la Caja de herramientas, hacer doble clic en el control ContextMenuEn la Caja de herramientas, hacer doble clic en el control ContextMenu
Para agregar un menPara agregar un menúú contextual contextual programprogramááticamenteticamente
Public Sub AddContextMenu()Dim contxmenu as New ContextMenu()
Me.ContextMenu() = contxmenu…
End Sub
Public Sub AddContextMenu()Dim contxmenu as New ContextMenu()
Me.ContextMenu() = contxmenu…
End Sub
Cómo agregar elementos de menú en tiempo de ejecución
Agregar elementos de menAgregar elementos de menúú a un mena un menúú contextual en tiempo de ejecucicontextual en tiempo de ejecucióónn
Dentro del método, añadir elementos de menú a la colección MenuItems del objeto ContextMenuDentro del método, añadir elementos de menú a la colección MenuItems del objeto ContextMenucontxMenu.MenuItems.Add(menuItemNew)contxMenu.MenuItems.Add(menuItemNew)
Dentro del método, establecer la propiedad Text para cada elemento de menúDentro del método, establecer la propiedad Text para cada elemento de menúMenuItemNew.Text = "New"MenuItemNew.Text = "New"
Dentro del método, crear objetos MenuItem para añadirlos al menúcontextual de la colección ObjectDentro del método, crear objetos MenuItem para añadirlos al menúcontextual de la colección ObjectDim menuItemNew as New MenuItem()Dim menuItemNew as New MenuItem()
Cómo crear controladores de menú para elementos de menú
Para agregar funcionalidades a los elementos de menPara agregar funcionalidades a los elementos de menúú
Crear un controlador de eventos para el evento MenuItem.ClickCrear un controlador de eventos para el evento MenuItem.Click
Private Sub MenuItemNew_Click (ByVal sender as System.Object,ByVal e as System.EventsArgs)
End Sub
Private Sub MenuItemNew_Click (ByVal sender as System.Object,ByVal e as System.EventsArgs)
End Sub
Escribir el código para controlar el eventoEscribir el código para controlar el evento
Private Sub MenuItemNew_Click (ByVal sender as System.Object,ByVal e as System.EventsArgs)
MessageBox.Show("You clicked the NewOption")
End Sub
Private Sub MenuItemNew_Click (ByVal sender as System.Object,ByVal e as System.EventsArgs)
MessageBox.Show("You clicked the NewOption")
End Sub
Cómo utilizar las propiedades del menú
Cómo validar controles utilizando el evento Validating
Utilizar el evento Validating de un control para validar la entrada de los usuarios
El evento Validated se dispara cuando la validación de los controles finaliza la ejecución de eventos de validaciónLa propiedad CausesValidation determina si el control anterior participará en la validación. Si está establecida en False para un control, el control anterior no dispara el evento de validación
Control ErrorProvider
ErrorProvider
Muestra errores cuando se valida la entrada del usuario en un formulario
Muestra errores en un dataset
Principales propiedades
Método clave
DataSourceDataSource ContainerControlContainerControl IconIcon
SetErrorSetError
Cómo utilizar el control ErrorProvider
Para utilizar el control Para utilizar el control ErrorProviderErrorProvider
Añadir el control ErrorProviderAñadir el control ErrorProvider
Añadir controles al formularioAñadir controles al formulario
Añadir código al evento Validating del primer controlAñadir código al evento Validating del primer control