Cómo enlazar una matriz de objetos a un formulario Windows Forms utilizando Visual Basic .NET o Visual Basic 2005

IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.

Haga clic aquí para ver el artículo original (en inglés): 313639
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
Resumen
En este artículo paso a paso describe cómo enlazar una matriz de objetos a un formulario Windows Forms. El ejemplo en este artículo incluye un formulario de Windows con tres cuadros de texto para mostrar las propiedades del objeto. El ejemplo también incluye cuatro botones de comando para examinar la clase de matriz .

back to the top

Requisitos

En la lista siguiente se describen el hardware, el software, la infraestructura de red, las capacidades, el conocimiento y los Service Pack que se necesitan:
  • Microsoft Visual Basic .NET o Microsoft Visual Basic 2005
  • Intermedio de comprensión de los conceptos de programación de Visual Basic
back to the top

Descripción de código

Esta sección resalta los conceptos de codificación que son necesarios para realizar esta tarea.

back to the top

Diseñar la clase

Una clase que se enlazará a un formulario debe tener descriptores de acceso. Cualquier propiedad que se va a enlazar debe tener el Conjunto de propiedades y los métodos Property Get . La clase que se utiliza para el ejemplo de este artículo tiene tres propiedades (sólo se muestra en esta sección). El ejemplo en este artículo también incluye un constructor parametrizado, aunque no es necesario.
Public Class guitar    Private m_make As String    Private m_model As String    Private m_year As Short    Public Sub New(ByVal make, ByRef model, ByVal year)        Me.make = make        Me.model = model        Me.year = year    End Sub    Public Property make() As String        Get            Return m_make        End Get        Set(ByVal Value As String)            m_make = Value        End Set    End Property End Class				
back to the top

Agregar instancias de clase a una matriz

El siguiente paso es crear los objetos y agregarlos a la clase Array :
Dim al(2) As guitaral(0)  = new guitar("Gibson", "Les Paul", 1958)al(1)  = new guitar("Fender", "Jazz Bass", 1964)al(2)  = new guitar("Guild", "Bluesbird", 1971)				
back to the top

Enlazar las propiedades de objetos a controles de formulario

Una vez que la matriz se ha llenado, puede enlazar las propiedades individuales del objeto a controles de formularios Windows Forms. Para ello, llame al método Add de la propiedad DataBindings del control TextBox . Además, debe pasar la propiedad de control que se va a enlazar, el nombre de la matriz y la propiedad del objeto.
textBox1.DataBindings.Add("Text", al, "make")textBox2.DataBindings.Add("Text", al, "model")textBox3.DataBindings.Add("Text", al, "year")				
back to the top

Proporcionar una manera para buscar a través de la matriz

En el paso final de este proceso, se utiliza una clase CurrencyManager para examinar la matriz . Para ello, asocie el CurrencyManager BindingContext del formulario (en este caso, la matriz ).
Private cMan As CurrencyManagercMan = CType(Me.BindingContext(al), CurrencyManager)				
la clase CurrencyManager tiene una propiedad de posición que puede manipular para recorrer en iteración los miembros de la matriz . Agregando a o restando del valor actual de Position , puede mostrar a distintos miembros de la matriz en el formulario. Por ejemplo:
'Move forward one element.cMan.Position += 1'Move back one element.cMan.Position -= 1'Move to the beginning.cMan.Position = 0'Move to the end.cMan.Position = al.Length - 1				
back to the top

Ejemplo paso a paso

  1. Abra un nuevo proyecto de aplicación para Windows en Visual Basic .NET o Visual Basic 2005. Form1 se agrega al proyecto de manera predeterminada.

    Nota El código debe cambiarse en Visual Basic 2005. Si crea un nuevo formulario denominado Form1 en Visual Basic 2005, tiene un archivo Form1.vb para el código y un archivo Form1.Designer.vb que contiene la sección generada automáticamente. Los formularios Windows Forms Designer utiliza la palabra clave partial para dividir la implementación de Form1 en dos archivos independientes. Esto impide que el código emitido por diseñador están intercalados con el código.

    Para obtener más información acerca de las nuevas mejoras del lenguaje Visual Basic 2005, visite el siguiente sitio Web de Microsoft: Para obtener más información acerca de las clases parciales y el Diseñador de Windows Forms, visite el siguiente sitio Web:
  2. Agregar una clase al proyecto.
  3. Reemplace el código en Class1.vb con el siguiente código:
    Public Class guitar    Private m_make As String    Private m_model As String    Private m_year As Short    Public Sub New(ByVal make, ByRef model, ByVal year)        Me.make = make        Me.model = model        Me.year = year    End Sub    Public Property make() As String        Get            Return m_make        End Get        Set(ByVal Value As String)            m_make = Value        End Set    End Property    Public Property model() As String        Get            Return m_model        End Get        Set(ByVal Value As String)            m_model = Value        End Set    End Property    Public Property year() As Short        Get            Return m_year        End Get        Set(ByVal Value As Short)            m_year = Value        End Set    End PropertyEnd Class					
  4. Agregue tres controles TextBox a Form1 y, a continuación, organizar los controles horizontalmente.
  5. Agregue cuatro controles Button a Form1 y, a continuación, organizar los controles horizontalmente.
  6. Cambie la propiedad Text de botones de las manera siguiente:
    BotónTexto
    Button1Siguiente
    Button2Anterior
    Button3Primera
    Button4Último

  7. Agregue el código siguiente a la sección de declaración de Form1:
    Private al(2) As guitarPrivate cMan As CurrencyManager					
  8. Agregue el código siguiente al evento Form_Load :
    al(0)  = new guitar("Gibson", "Les Paul", 1958)al(1)  = new guitar("Fender", "Jazz Bass", 1964)al(2)  = new guitar("Guild", "Bluesbird", 1971)cMan = CType(Me.BindingContext(al), CurrencyManager)TextBox1.DataBindings.Add("Text", al, "make")TextBox2.DataBindings.Add("Text", al, "model")TextBox3.DataBindings.Add("Text", al, "year")					

  9. Agregue el código siguiente después del evento Form_Load :
    Private Sub Button1_Click(ByVal sender As System.Object, _ByVal e As System.EventArgs) Handles Button1.Click        cMan.Position += 1End SubPrivate Sub Button2_Click(ByVal sender As System.Object, _ByVal e As System.EventArgs) Handles Button2.Click        cMan.Position -= 1End SubPrivate Sub Button3_Click(ByVal sender As System.Object, _ByVal e As System.EventArgs) Handles Button3.Click        cMan.Position = 0End SubPrivate Sub Button4_Click(ByVal sender As System.Object, _ByVal e As System.EventArgs) Handles Button4.Click        cMan.Position = al.Length - 1End Sub					
  10. Genere y ejecute el proyecto.
  11. Haga clic en los botones para mostrar diferentes elementos de la matriz. Tenga en cuenta que puede modificar los valores de los objetos.
back to the top
Referencias
Para obtener más información, consulte el tema "Consumidores de datos en formularios Windows Forms" en la documentación de Visual Studio.NET o la Ayuda en pantalla de Visual Studio. 2005.

back to the top

Advertencia: este artículo se tradujo automáticamente

Propiedades

Id. de artículo: 313639 - Última revisión: 02/26/2014 20:54:14 - Revisión: 2.7

Microsoft Visual Basic .NET 2002 Standard Edition, Microsoft Visual Basic .NET 2003 Standard Edition, Microsoft Visual Basic 2005

  • kbnosurvey kbarchive kbmt kbvs2005swept kbvs2005applies kbhowtomaster KB313639 KbMtes
Comentarios