Compartilhar via


Como: navegar dados in Windows Forms

Em um aplicativos do Windows, a maneira mais fácil para navegar pelos registros em uma fonte de dados é BIND um BindingSource componente com a fonte de dados e controles de ligação para o BindingSource. Em seguida, você pode usar o método de navegação interna sobre o BindingSource como um MoveNext, MoveLast, MovePrevious e MoveFirst. Usando esses métodos ajustará o Position e Current propriedades das BindingSource apropriadamente. Você também pode encontrar um item e conjunto-la sistema autônomo o corrente do item por conjunto seletiva o Position propriedade.

Para incrementar a posição de uma fonte de dados

  • conjunto o Position propriedade das BindingSource para os dados vinculados para a posição do registro para ir para. O exemplo a seguir ilustra usando o MoveNext método para o BindingSource Para incrementar o Position propriedade quando o nextButton é clicado. The BindingSource está associado a Customers tabela de um conjunto de dados Northwind.

    Observação:

    Configurando o Position propriedade para um valor além do primeiro ou último registro não resulta em erro, sistema autônomo o .NET Framework não permitirá que você defina a posição para um valor fora dos limites da lista. Se for importante em seu aplicativo para saber se você passou após o primeiro ou último registro, inclua lógica para teste se você exceder a contagem de elemento de dados.

    Private Sub nextButton_Click(ByVal sender As Object, _
        ByVal e As System.EventArgs) Handles nextButton.Click
        Me.customersBindingSource.MoveNext()
    End Sub
    
    private void nextButton_Click(object sender, System.EventArgs e)
    {
        this.customersBindingSource.MoveNext();
    }
    

Para verificar se você tiver passado o participante ou início

  • Crie um manipulador de eventos para o evento PositionChanged.No manipulador, você pode teste se o valor da posição proposto excedeu a contagem de elemento de dados real.

    O exemplo a seguir ilustra como você pode testar se você atingiu o último elemento de dados.No exemplo, se você for o último elemento, o Próximo botão no formulário é desabilitado.

    Observação:

    Esteja ciente, deve alterar o Você está navegando lista no código , Você deve reativar o Próximo botão para que os usuários podem procurar o comprimento inteiro da nova lista.Além disso, esteja ciente que o acimaPositionChanged evento para a específica BindingSource Você está trabalhando com precisa ser associado a seu método de manipulação de eventos. A seguir é um exemplo de um método para manipular o PositionChanged evento:

    Sub customersBindingSource_PositionChanged(ByVal sender As Object, _
        ByVal e As EventArgs)
    
        If customersBindingSource.Position = _
            customersBindingSource.Count - 1 Then
            nextButton.Enabled = False
        Else
            nextButton.Enabled = True
        End If
    End Sub
    
    void customersBindingSource_PositionChanged(object sender, EventArgs e)
    {
        if (customersBindingSource.Position == customersBindingSource.Count - 1)
            nextButton.Enabled = false;
        else
            nextButton.Enabled = true;
    }
    

Para localizar um item e defina-o sistema autônomo o item corrente

  • Localize o registro que você deseja conjunto sistema autônomo o item corrente.Você pode fazer isso usando o Find método para o BindingSource, se seus dados de fonte implementa IBindingList. Estes são alguns exemplos de dados origina que implemente IBindingList são BindingList<T> e DataView.

    Sub findButton_Click(ByVal sender As Object, ByVal e As EventArgs) _
        Handles findButton.Click
        Dim foundIndex As Integer = customersBindingSource.Find("CustomerID", _
            "ANTON")
        customersBindingSource.Position = foundIndex
    End Sub
    
    void findButton_Click(object sender, EventArgs e)
    {
        int foundIndex = customersBindingSource.Find("CustomerID", "ANTON");
        customersBindingSource.Position = foundIndex;
    }
    

Consulte também

Conceitos

Fontes de dados com suporte do Windows Forms

Alterar notificação no Windows Forms vinculação de dados

Vinculação de dados e do Windows Forms

Outros recursos

Windows Forms dados Binding