Como associar uma matriz de objectos a um formulário do Windows utilizando o Visual Basic .NET ou Visual Basic 2005

Traduções de Artigos Traduções de Artigos
Artigo: 313639 - Ver produtos para os quais este artigo se aplica.
Este artigo foi arquivado. Este artigo é oferecido "tal como está" e deixará de ser actualizado.
Expandir tudo | Reduzir tudo

Nesta página

Sumário

Este artigo passo a passo descreve como associar uma matriz de objectos a um formulário do Windows. O exemplo neste artigo inclui um formulário do Windows com três caixas de texto para apresentar as propriedades de objecto. O exemplo também inclui quatro botões de comando para procurar a classe de matriz .

Requisitos

A lista seguinte descreve o hardware recomendado, software, infra-estrutura de rede, competências, conhecimentos e service packs que necessita:
  • O Microsoft Visual Basic .NET ou o Microsoft Visual Basic 2005
  • Intermédio compreensão dos conceitos de programação Visual Basic

Descrição do código

Esta secção realça os conceitos de codificação são necessários para realizar esta tarefa.

Estruturar a classe

Uma classe que será ligada a um formulário tem de ter os acessores de propriedade. Qualquer propriedade que será ligada tem de ter o Conjunto de propriedades e métodos Obter propriedade . A classe utilizada para o exemplo neste artigo tem três propriedades (só é mostrado nesta secção). O exemplo neste artigo também inclui um construtor com parâmetros, embora não seja necessário.
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
				

Adicionar uma matriz de instâncias de classe

O passo seguinte consiste em criar os objectos e adicionar a classe de matriz :
Dim al(2) As guitar

al(0)  = new guitar("Gibson", "Les Paul", 1958)
al(1)  = new guitar("Fender", "Jazz Bass", 1964)
al(2)  = new guitar("Guild", "Bluesbird", 1971)
				

Ligar as propriedades do objecto a controlos de formulário

Depois de matriz é preenchida, pode ligar propriedades individuais do objecto para controlos de formulários do Windows. Para efectuar este procedimento, chame o método de Adicionar da propriedade DataBindings do controlo de caixa de texto . Além disso, deve passar a propriedade que será ligada, o nome da matriz e a propriedade do objecto.
textBox1.DataBindings.Add("Text", al, "make")
textBox2.DataBindings.Add("Text", al, "model")
textBox3.DataBindings.Add("Text", al, "year")
				

Fornecer uma médias a procurar através de matriz

Na fase final deste processo, pode utilizar uma classe CurrencyManager para procurar a matriz . Para efectuar este procedimento, associa o CurrencyManager BindingContext de formulário (neste caso, a matriz ).
Private cMan As CurrencyManager

cMan = CType(Me.BindingContext(al), CurrencyManager)
				
a classe CurrencyManager tem uma propriedade de posição que pode manipular para iterar através de membros da matriz . Adicionando ou subtraindo do valor actual de posição , pode apresentar diferentes membros de matriz no formulário. Por exemplo:
'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
				

Exemplo passo a passo

  1. Abra um projecto Windows Application novo no Visual Basic .NET ou Visual Basic 2005. Form1 é adicionado ao projecto por predefinição.

    Nota Deve ser alterado o código do Visual Basic 2005. Se criar um novo formulário denominado Form1 do Visual Basic 2005, terá um ficheiro Form1.VB para o código e um ficheiro Form1.Designer.vb que contém a secção gerada automaticamente. Os Windows Forms Designer utiliza a palavra-chave parcial para dividir a implementação do Form1 em dois ficheiros separados. Isto impede que código designer emite a ser intercalados com o código.

    Para obter mais informações sobre novos melhoramentos de idioma do Visual Basic 2005, visite o seguinte Web site da Microsoft:
    http://msdn2.microsoft.com/en-us/library/ms379584(vs.80).aspx
    Para obter mais informações sobre classes parciais e o Windows Forms Designer, visite o seguinte Web site da Microsoft:
    http://msdn2.microsoft.com/en-us/library/ms171843.aspx
  2. Adicione uma classe ao projecto.
  3. Substituir o código Class1.vb o seguinte 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 Property
    End Class
    					
  4. Adicione três controlos de caixa de texto ao Form1 e, em seguida, horizontalmente a dispor os controlos.
  5. Adicione quatro controlos botão ao Form1 e, em seguida, horizontalmente a dispor os controlos.
  6. Altere a propriedade texto dos botões da seguinte forma:
    Reduzir esta tabelaExpandir esta tabela
    BotãoTexto
    Button1Seguinte
    Button2Anterior
    Button3Primeiro
    Button4Apelido

  7. Adicione o seguinte código à secção declaração do Form1:
    Private al(2) As guitar
    Private cMan As CurrencyManager
    					
  8. Adicione o seguinte código ao 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. Adicione o seguinte código depois do evento Form_Load :
    Private Sub Button1_Click(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles Button1.Click
            cMan.Position += 1
    End Sub
    
    Private Sub Button2_Click(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles Button2.Click
            cMan.Position -= 1
    End Sub
    
    Private Sub Button3_Click(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles Button3.Click
            cMan.Position = 0
    End Sub
    
    Private Sub Button4_Click(ByVal sender As System.Object, _
    ByVal e As System.EventArgs) Handles Button4.Click
            cMan.Position = al.Length - 1
    End Sub
    					
  10. Crie e execute o projecto.
  11. Clique nos botões para apresentar elementos da matriz diferente. Tenha em atenção que pode editar os valores dos objectos.

Referências

Para mais informações, consulte o tópico "Consumidores de dados em formulários do Windows" na documentação do Microsoft Visual Studio .NET ou Visual Studio 2005 ajuda online.

Propriedades

Artigo: 313639 - Última revisão: 26 de fevereiro de 2014 - Revisão: 2.7
A informação contida neste artigo aplica-se a:
  • Microsoft Visual Basic .NET 2002 Standard Edition
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic 2005
Palavras-chave: 
kbnosurvey kbarchive kbmt kbvs2005swept kbvs2005applies kbhowtomaster KB313639 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine translation ou MT), não tendo sido portanto revisto ou traduzido por humanos. A Microsoft tem artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais. O objectivo é simples: oferecer em Português a totalidade dos artigos existentes na base de dados do suporte. Sabemos no entanto que a tradução automática não é sempre perfeita. Esta pode conter erros de vocabulário, sintaxe ou gramática? erros semelhantes aos que um estrangeiro realiza ao falar em Português. A Microsoft não é responsável por incoerências, erros ou estragos realizados na sequência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza actualizações frequentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 313639

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com