VirtualModeを使用しているときにListViewで検索を行うのに問題があります。 ListViewの読み込みは、RetrieveVirtualItemイベントを使用して見つけるだけです。VirtualModeでListViewItemを検索します。
私のフォームにはテキストボックスと「検索」ボタンがあります。
private void btnSearch_Click(object sender, EventArgs e)
{
listViewFields.FindItemWithText(txtSearch.Text);
}
私は私のコレクション内のテキストを検索し、イベント引数のIndexプロパティにインデックスを設定しSearchForVirtualItemイベントを処理しています。
private void listViewFields_SearchForVirtualItem(object sender, SearchForVirtualItemEventArgs e)
{
e.Index = collection.IndexOf(e.Text);
}
e.Indexの値は期待値に設定されますが、ListViewでは何も起こりません。
あなたはMSDN 4 [ListView.SearchForVirtualItemイベント](https://msdn.microsoft.com/en-us/library/system.windows.forms.listview.searchforvirtualitem(見て検討していますv = vs.110).aspx) – MethodMan
これは私が使用しているものです。 2番目のコードブロックに気がついたら、私はそのイベントを処理しています。 FindItemWithTextメソッドはそのイベントをトリガし、イベントargsのe.Textの値はFindItemWithTextに渡した値です。何も起こりません。 – James
http://stackoverflow.com/questions/27129619/how-to-use-finditemwithtext – MethodMan