Condividi tramite


Procedura: ricercare dati in un controllo DataRepeater (Visual Studio)

Aggiornamento: Luglio 2008

Quando si utilizza un controllo DataRepeater contenente molti record, è necessario fornire agli utenti la possibilità di cercare un record specifico. Anziché cercare i dati nel controllo stesso, è possibile implementare una ricerca tramite query sull'oggetto BindingSource sottostante. Una volta trovato l'elemento sarà possibile utilizzare la proprietà CurrentItemIndex per selezionare l'elemento e scorrerlo nella visualizzazione.

Per implementare una ricerca

  1. Trascinare un controllo TextBox dalla Casella degli strumenti al form contenente il controllo DataRepeater.

  2. Nella finestra Proprietà, impostare la proprietà Nome su SearchTextBox.

  3. Trascinare un controllo Button dalla Casella degli strumenti al form contenente il controllo DataRepeater.

  4. Nella finestra Proprietà, impostare la proprietà Nome su SearchButton. Impostare la proprietà Testo su Search.

  5. Fare doppio clic sul controllo Button per aprire l'editor di codice, quindi aggiungere il codice seguente al gestore eventi SearchButton_Click:

    Private Sub SearchButton_Click(ByVal sender As System.Object, ByVal e As  _
      System.EventArgs) Handles SearchButton.Click
        Dim foundIndex As Integer
        Dim searchString As String
        searchString = SearchTextBox.Text
        foundIndex = ProductsBindingSource.Find("ProductID", _
         searchString)
        If foundIndex > -1 Then
            DataRepeater1.CurrentItemIndex = foundIndex
        Else
            MsgBox("Item " & searchString & " not found.")
        End If
    End Sub
    
    private void searchButton_Click(System.Object sender, System.EventArgs e)
    {
        int foundIndex;
        string searchString;
        searchString = searchTextBox.Text;
        foundIndex = productsBindingSource.Find("ProductID", searchString);
        if (foundIndex > -1)
        {
            dataRepeater1.CurrentItemIndex = foundIndex;
        }
        else
        {
            MessageBox.Show("Item " + searchString + " not found.");
        }
    }
    

    Sostituire ProductsBindingSource con il nome dell'oggetto BindingSource per DataRepeater e sostituire ProductID con il nome del campo che si desidera cercare.

Vedere anche

Attività

Risoluzione dei problemi relativi al controllo DataRepeater (Visual Studio)

Procedura: modificare l'aspetto di un controllo DataRepeater (Visual Studio)

Concetti

Introduzione al controllo DataRepeater (Visual Studio)

Riferimenti

DataRepeater

Cronologia delle modifiche

Data

Cronologia

Motivo

Luglio 2008

Aggiunto argomento.

Modifica di funzionalità in SP1.