ListBox.FindStringExact Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menemukan item pertama dalam ListBox yang sama persis dengan string yang ditentukan.
Overload
| Nama | Deskripsi |
|---|---|
| FindStringExact(String) |
Menemukan item pertama dalam ListBox yang sama persis dengan string yang ditentukan. |
| FindStringExact(String, Int32) |
Menemukan item pertama dalam ListBox yang sama persis dengan string yang ditentukan. Pencarian dimulai pada indeks awal tertentu. |
FindStringExact(String)
- Sumber:
- ListBox.cs
- Sumber:
- ListBox.cs
- Sumber:
- ListBox.cs
- Sumber:
- ListBox.cs
- Sumber:
- ListBox.cs
Menemukan item pertama dalam ListBox yang sama persis dengan string yang ditentukan.
public:
int FindStringExact(System::String ^ s);
public int FindStringExact(string s);
member this.FindStringExact : string -> int
Public Function FindStringExact (s As String) As Integer
Parameter
- s
- String
Teks yang akan dicari.
Mengembalikan
Indeks berbasis nol dari item pertama yang ditemukan; mengembalikan ListBox.NoMatches jika tidak ada kecocokan yang ditemukan.
Contoh
Contoh kode berikut menunjukkan cara menggunakan ListBox.FindStringExact metode untuk mencari ListBox kontrol untuk item yang sama persis dengan string tertentu. Jika tidak ada item yang ditemukan yang cocok dengan string pencarian, FindStringExact mengembalikan nilai -1 dan contoh menampilkan MessageBox. Jika item ditemukan yang cocok dengan teks pencarian, contohnya menggunakan SetSelected metode untuk memilih item di ListBox.
private:
void FindMySpecificString( String^ searchString )
{
// Ensure we have a proper string to search for.
if ( searchString != String::Empty )
{
// Find the item in the list and store the index to the item.
int index = listBox1->FindStringExact( searchString );
// Determine if a valid index is returned. Select the item if it is valid.
if ( index != ListBox::NoMatches )
listBox1->SetSelected( index, true );
else
MessageBox::Show( "The search string did not find any items in the ListBox that exactly match the specified search string" );
}
}
private void FindMySpecificString(string searchString)
{
// Ensure we have a proper string to search for.
if (!string.IsNullOrEmpty(searchString))
{
// Find the item in the list and store the index to the item.
int index = listBox1.FindStringExact(searchString);
// Determine if a valid index is returned. Select the item if it is valid.
if (index != ListBox.NoMatches)
listBox1.SetSelected(index,true);
else
MessageBox.Show("The search string did not find any items in the ListBox that exactly match the specified search string");
}
}
Private Sub FindMySpecificString(ByVal searchString As String)
' Ensure we have a proper string to search for.
If searchString <> String.Empty Then
' Find the item in the list and store the index to the item.
Dim index As Integer = listBox1.FindStringExact(searchString)
' Determine if a valid index is returned. Select the item if it is valid.
If index <> ListBox.NoMatches Then
listBox1.SetSelected(index, True)
Else
MessageBox.Show("The search string did not find any items in the ListBox that exactly match the specified search string")
End If
End If
End Sub
Keterangan
Pencarian yang dilakukan oleh metode ini tidak peka huruf besar/kecil. Pencarian mencari kecocokan yang sama persis dengan kata-kata yang ditentukan dalam parameter string pencarian, s. Anda dapat menggunakan metode ini untuk mencari item pertama yang cocok dengan string yang ditentukan. Anda kemudian dapat melakukan tugas seperti menghapus item yang berisi teks pencarian dengan menggunakan Remove metode atau mengubah teks item. Setelah Anda menemukan teks yang ditentukan, jika Anda ingin mencari instans teks lain di ListBox, Anda dapat menggunakan versi FindStringExact metode yang menyediakan parameter untuk menentukan indeks awal dalam ListBox. Jika Anda ingin melakukan pencarian kata parsial alih-alih kecocokan kata yang tepat, gunakan metode .FindString
Lihat juga
Berlaku untuk
FindStringExact(String, Int32)
- Sumber:
- ListBox.cs
- Sumber:
- ListBox.cs
- Sumber:
- ListBox.cs
- Sumber:
- ListBox.cs
- Sumber:
- ListBox.cs
Menemukan item pertama dalam ListBox yang sama persis dengan string yang ditentukan. Pencarian dimulai pada indeks awal tertentu.
public:
int FindStringExact(System::String ^ s, int startIndex);
public int FindStringExact(string s, int startIndex);
member this.FindStringExact : string * int -> int
Public Function FindStringExact (s As String, startIndex As Integer) As Integer
Parameter
- s
- String
Teks yang akan dicari.
- startIndex
- Int32
Indeks berbasis nol item sebelum item pertama yang akan dicari. Atur ke negatif satu (-1) untuk mencari dari awal kontrol.
Mengembalikan
Indeks berbasis nol dari item pertama yang ditemukan; mengembalikan ListBox.NoMatches jika tidak ada kecocokan yang ditemukan.
Pengecualian
Parameter startIndex kurang dari nol atau lebih besar dari atau sama dengan nilai Count properti ListBox.ObjectCollection kelas.
Contoh
Contoh kode berikut menunjukkan cara menggunakan FindStringExact metode untuk mencari semua item dalam ListBox yang sama persis dengan teks pencarian yang ditentukan. Contoh menggunakan versi FindStringExact metode yang memungkinkan Anda menentukan indeks pencarian awal untuk melakukan pencarian berkelanjutan dari semua item di ListBox. Contoh ini juga menunjukkan cara menentukan kapan FindStringExact metode mulai mencari dari bagian atas daftar setelah mencapai bagian bawah daftar item, untuk mencegah pencarian rekursif. Setelah item ditemukan di ListBox, item dipilih menggunakan SetSelected metode .
private:
void FindAllOfMyExactStrings( String^ searchString )
{
// Set the SelectionMode property of the ListBox to select multiple items.
listBox1->SelectionMode = SelectionMode::MultiExtended;
// Set our intial index variable to -1.
int x = -1;
// If the search string is empty exit.
if ( searchString->Length != 0 )
{
// Loop through and find each item that matches the search string.
do
{
// Retrieve the item based on the previous index found. Starts with -1 which searches start.
x = listBox1->FindStringExact( searchString, x );
// If no item is found that matches exit.
if ( x != -1 )
{
// Since the FindStringExact loops infinitely, determine if we found first item again and exit.
if ( listBox1->SelectedIndices->Count > 0 )
{
if ( x == listBox1->SelectedIndices[ 0 ] )
return;
}
// Select the item in the ListBox once it is found.
listBox1->SetSelected( x, true );
}
}
while ( x != -1 );
}
}
private void FindAllOfMyExactStrings(string searchString)
{
// Set the SelectionMode property of the ListBox to select multiple items.
listBox1.SelectionMode = SelectionMode.MultiExtended;
// Set our intial index variable to -1.
int x =-1;
// If the search string is empty exit.
if (searchString.Length != 0)
{
// Loop through and find each item that matches the search string.
do
{
// Retrieve the item based on the previous index found. Starts with -1 which searches start.
x = listBox1.FindStringExact(searchString, x);
// If no item is found that matches exit.
if (x != -1)
{
// Since the FindStringExact loops infinitely, determine if we found first item again and exit.
if (listBox1.SelectedIndices.Count > 0)
{
if (x == listBox1.SelectedIndices[0])
return;
}
// Select the item in the ListBox once it is found.
listBox1.SetSelected(x,true);
}
}while(x != -1);
}
}
Private Sub FindAllOfMyExactStrings(ByVal searchString As String)
' Set the SelectionMode property of the ListBox to select multiple items.
ListBox1.SelectionMode = SelectionMode.MultiExtended
' Set our intial index variable to -1.
Dim x As Integer = -1
' If the search string is empty exit.
If searchString.Length <> 0 Then
' Loop through and find each item that matches the search string.
Do
' Retrieve the item based on the previous index found. Starts with -1 which searches start.
x = ListBox1.FindStringExact(searchString, x)
' If no item is found that matches exit.
If x <> -1 Then
' Since the FindStringExact loops infinitely, determine if we found first item again and exit.
If ListBox1.SelectedIndices.Count > 0 Then
If x = ListBox1.SelectedIndices(0) Then
Return
End If
End If
' Select the item in the ListBox once it is found.
ListBox1.SetSelected(x, True)
End If
Loop While x <> -1
End If
End Sub
Keterangan
Pencarian yang dilakukan oleh metode ini tidak peka huruf besar/kecil. Pencarian mencari kata-kata yang sama persis dengan parameter string pencarian yang ditentukan, s. Anda dapat menggunakan metode ini untuk mencari item pertama yang cocok dengan string yang ditentukan pada indeks awal yang ditentukan dalam daftar item untuk ListBox. Anda kemudian dapat melakukan tugas seperti menghapus item yang berisi teks pencarian menggunakan Remove metode atau mengubah teks item. Metode ini biasanya digunakan setelah panggilan dilakukan menggunakan versi metode ini yang tidak menentukan indeks awal. Setelah item awal ditemukan dalam daftar, metode ini biasanya digunakan untuk menemukan instans lebih lanjut dari teks pencarian dengan menentukan posisi indeks dalam startIndex parameter item setelah instans pertama yang ditemukan dari teks pencarian. Jika Anda ingin melakukan pencarian kata parsial alih-alih kecocokan kata yang tepat, gunakan metode .FindString
Note
Ketika pencarian mencapai bagian ListBoxbawah , pencarian berlanjut dari bagian ListBox atas kembali ke item yang ditentukan oleh startIndex parameter .