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