ListViewItem.FindNearestItem(SearchDirectionHint) 方法

定义

ListViewItem 查找下一个项,按指定的方向搜索。

public:
 System::Windows::Forms::ListViewItem ^ FindNearestItem(System::Windows::Forms::SearchDirectionHint searchDirection);
public System.Windows.Forms.ListViewItem FindNearestItem (System.Windows.Forms.SearchDirectionHint searchDirection);
public System.Windows.Forms.ListViewItem? FindNearestItem (System.Windows.Forms.SearchDirectionHint searchDirection);
member this.FindNearestItem : System.Windows.Forms.SearchDirectionHint -> System.Windows.Forms.ListViewItem
Public Function FindNearestItem (searchDirection As SearchDirectionHint) As ListViewItem

参数

searchDirection
SearchDirectionHint

SearchDirectionHint 值之一。

返回

与给定坐标最接近的 ListViewItem(以指定方向进行搜索)。

例外

作为容器的 ViewListView 属性被设置为除 SmallIconLargeIcon 以外的值。

示例

下面的代码示例演示如何使用 FindNearestItem 方法。 若要运行此示例,请将以下代码粘贴到包含名为 findListViewListView Windows 窗体中。 确保 属性 View 设置为图标视图, ListView 并且 已填充项。 将 MouseDown 的事件 findListViewfindListView_MouseDown 此示例中的 方法相关联。

void findListView_MouseDown(object sender, MouseEventArgs e)
{
    ListViewHitTestInfo info = findListView.HitTest(e.X, e.Y);
    ListViewItem foundItem = null;
    if (info.Item != null)
        foundItem = info.Item.FindNearestItem(SearchDirectionHint.Up);
    if (foundItem != null)
        label1.Text = "Previous Item: " + foundItem.Text;

    else
        label1.Text = "No item found";
}
Private Sub findListView_MouseDown(ByVal sender As Object, ByVal e As MouseEventArgs)


    Dim info As ListViewHitTestInfo = findListView.HitTest(e.X, e.Y)
    Dim foundItem As ListViewItem = Nothing
    If (info.Item IsNot Nothing) Then
        foundItem = info.Item.FindNearestItem(SearchDirectionHint.Up)
    End If
    If (foundItem IsNot Nothing) Then
        label1.Text = "Previous Item: " + foundItem.Text

    Else
        label1.Text = "No item found"
    End If

End Sub

注解

如果在给定方向上找不到任何项,则 FindNearestItem 方法返回 null

标识最近的项可能因运行应用程序的操作系统而异,并会影响 的结果 FindNearestItem

适用于