ListView.SearchForVirtualItem Zdarzenie

Definicja

Występuje, gdy ListView element jest w trybie wirtualnym, a wyszukiwanie odbywa się.

public:
 event System::Windows::Forms::SearchForVirtualItemEventHandler ^ SearchForVirtualItem;
public event System.Windows.Forms.SearchForVirtualItemEventHandler SearchForVirtualItem;
public event System.Windows.Forms.SearchForVirtualItemEventHandler? SearchForVirtualItem;
member this.SearchForVirtualItem : System.Windows.Forms.SearchForVirtualItemEventHandler 
Public Custom Event SearchForVirtualItem As SearchForVirtualItemEventHandler 

Typ zdarzenia

Przykłady

Poniższy przykład kodu przedstawia użycie tego elementu członkowskiego. W tym przykładzie wyszukiwanie zwraca najbliższe dopasowanie do określonej liczby całkowitej na liście pierwszych dziesięciu tysięcy kwadratów. Ten przykład kodu jest częścią większego przykładu podanego VirtualMode dla właściwości.

//This event handler enables search functionality, and is called
//for every search request when in Virtual mode.
void listView1_SearchForVirtualItem(object sender, SearchForVirtualItemEventArgs e)
{
    //We've gotten a search request.
    //In this example, finding the item is easy since it's
    //just the square of its index.  We'll take the square root
    //and round.
    double x = 0;
    if (Double.TryParse(e.Text, out x)) //check if this is a valid search
    {
        x = Math.Sqrt(x);
        x = Math.Round(x);
        e.Index = (int)x;
    }
    //If e.Index is not set, the search returns null.
    //Note that this only handles simple searches over the entire
    //list, ignoring any other settings.  Handling Direction, StartIndex,
    //and the other properties of SearchForVirtualItemEventArgs is up
    //to this handler.
}
'This event handler enables search functionality, and is called
'for every search request when in Virtual mode.
Private Sub listView1_SearchForVirtualItem(ByVal sender As Object, ByVal e As SearchForVirtualItemEventArgs) Handles listView1.SearchForVirtualItem
    'We've gotten a search request.
    'In this example, finding the item is easy since it's
    'just the square of its index.  We'll take the square root
    'and round.
    Dim x As Double = 0
    If [Double].TryParse(e.Text, x) Then 'check if this is a valid search
        x = Math.Sqrt(x)
        x = Math.Round(x)
        e.Index = Fix(x)
    End If
    'Note that this only handles simple searches over the entire
    'list, ignoring any other settings.  Handling Direction, StartIndex,
    'and the other properties of SearchForVirtualItemEventArgs is up
    'to this handler.
End Sub

Uwagi

To zdarzenie występuje, gdy element ListView jest w trybie wirtualnym i wywoływana FindNearestItem jest metoda or FindItemWithText . Podczas obsługi tego zdarzenia należy obliczyć element z listy elementów dostarczonych przez Items właściwość zgodnie z kryteriami wyszukiwania i ustawić SearchForVirtualItemEventArgs.Index właściwość na indeks .ListViewItem Jeśli element nie zostanie podany i FindNearestItemFindItemWithText zwróci nullwartość .

Aby uzyskać więcej informacji na temat obsługi zdarzeń, zobacz Obsługa i podnoszenie zdarzeń.

Dotyczy