SearchDirectionHint 枚举

定义

提供在何处搜索 ListViewItem 的指导性提示。Provides a directional hint of where to search for a ListViewItem.

public enum class SearchDirectionHint
public enum SearchDirectionHint
type SearchDirectionHint = 
Public Enum SearchDirectionHint
继承
SearchDirectionHint

字段

Down 40

当前项的下方。Below the current item.

Left 37

当前项的左侧。To the left of the current item.

Right 39

当前项的右侧。To the right of the current item.

Up 38

当前项的上方。Above the current item.

示例

下面的代码示例演示如何使用 SearchDirectionHint 枚举。The following code example demonstrates how to use the SearchDirectionHint enumeration. 若要运行此示例,请将以下代码粘贴到 Windows 窗体中,并从窗体的构造函数或 @no__t 事件处理方法中调用 @no__t 0。To run this example, paste the following code into a Windows Form and call InitializeLocationSearchListView from the form's constructor or Load event-handling method.

    ListView^ iconListView;
    TextBox^ previousItemBox;

private:
    void InitializeLocationSearchListView()
    {
        previousItemBox = gcnew TextBox();
        iconListView = gcnew ListView();
        previousItemBox->Location = Point(150, 20);

        // Create an image list for the icon ListView.
        iconListView->SmallImageList = gcnew ImageList();

        // Add an image to the ListView small icon list.
        iconListView->SmallImageList->Images->Add(
            gcnew Bitmap(Control::typeid, "Edit.bmp"));

        // Set the view to small icon and add some items with the image
        // in the image list.
        iconListView->View = View::SmallIcon;
        iconListView->Items->AddRange(gcnew array<ListViewItem^>{
            gcnew ListViewItem("Amy Alberts", 0),
            gcnew ListViewItem("Amy Recker", 0),
            gcnew ListViewItem("Erin Hagens", 0),
            gcnew ListViewItem("Barry Johnson", 0),
            gcnew ListViewItem("Jay Hamlin", 0),
            gcnew ListViewItem("Brian Valentine", 0),
            gcnew ListViewItem("Brian Welker", 0),
            gcnew ListViewItem("Daniel Weisman", 0) });
         this->Controls->Add(iconListView);
         this->Controls->Add(previousItemBox);

         // Handle the MouseDown event to capture user input.
         iconListView->MouseDown += gcnew MouseEventHandler(
             this, &Form1::iconListView_MouseDown);
    }

    void iconListView_MouseDown(Object^ sender, MouseEventArgs^ e)
    {
        // Find the next item up from where the user clicked.
        ListViewItem^ foundItem = iconListView->FindNearestItem(
            SearchDirectionHint::Up, e->X, e->Y);

        // Display the results in a textbox..
        if (foundItem != nullptr)
        {
            previousItemBox->Text = foundItem->Text;
        }
        else
        {
            previousItemBox->Text = "No item found";
        }
    }
ListView iconListView = new ListView();
TextBox previousItemBox = new TextBox();

private void InitializeLocationSearchListView()
{
    previousItemBox.Location = new Point(150, 20);

    // Create an image list for the icon ListView.
    iconListView.LargeImageList = new ImageList();
    iconListView.Height = 400;
    
    // Add an image to the ListView large icon list.
    iconListView.LargeImageList.Images.Add(
        new Bitmap(typeof(Control), "Edit.bmp"));

    // Set the view to large icon and add some items with the image
    // in the image list.
    iconListView.View = View.LargeIcon;
    iconListView.Items.AddRange(new ListViewItem[]{
        new ListViewItem("Amy Alberts", 0), 
        new ListViewItem("Amy Recker", 0), 
        new ListViewItem("Erin Hagens", 0), 
        new ListViewItem("Barry Johnson", 0), 
        new ListViewItem("Jay Hamlin", 0), 
        new ListViewItem("Brian Valentine", 0), 
        new ListViewItem("Brian Welker", 0), 
        new ListViewItem("Daniel Weisman", 0) });
    this.Controls.Add(iconListView);
    this.Controls.Add(previousItemBox);

    // Handle the MouseDown event to capture user input.
   iconListView.MouseDown +=
       new MouseEventHandler(iconListView_MouseDown);
    //iconListView.MouseWheel += new MouseEventHandler(iconListView_MouseWheel);   
}

void iconListView_MouseDown(object sender, MouseEventArgs e)
{
    
    // Find the an item above where the user clicked.
    ListViewItem foundItem =
        iconListView.FindNearestItem(SearchDirectionHint.Up, e.X, e.Y);

    // Display the results in a textbox..
    if (foundItem != null)
        previousItemBox.Text = foundItem.Text;
    else
        previousItemBox.Text = "No item found";
}
Private WithEvents iconListView As New ListView()
Private previousItemBox As New TextBox()


Private Sub InitializeLocationSearchListView()
    previousItemBox.Location = New Point(150, 20)

    ' Create an image list for the icon ListView.
    iconListView.LargeImageList = New ImageList()

    ' Add an image to the ListView large icon list.
    iconListView.LargeImageList.Images.Add(New Bitmap(GetType(Control), "Edit.bmp"))

    ' Set the view to large icon and add some items with the image
    ' in the image list.
    iconListView.View = View.SmallIcon
    iconListView.Items.AddRange(New ListViewItem() { _
        New ListViewItem("Amy Alberts", 0), _
        New ListViewItem("Amy Recker", 0), _
        New ListViewItem("Erin Hagens", 0), _
        New ListViewItem("Barry Johnson", 0), _
        New ListViewItem("Jay Hamlin", 0), _
        New ListViewItem("Brian Valentine", 0), _
        New ListViewItem("Brian Welker", 0), _
        New ListViewItem("Daniel Weisman", 0)})

    Me.Controls.Add(iconListView)
    Me.Controls.Add(previousItemBox)
End Sub

Sub iconListView_MouseDown(ByVal sender As Object, ByVal e As MouseEventArgs) _
    Handles iconListView.MouseDown

    ' Find the next item up from where the user clicked.
    Dim foundItem As ListViewItem = _
    iconListView.FindNearestItem(SearchDirectionHint.Up, e.X, e.Y)

    ' Display the results in a textbox.
    If (foundItem IsNot Nothing) Then
        previousItemBox.Text = foundItem.Text
    Else
        previousItemBox.Text = "No item found"
    End If


End Sub

注解

此枚举由 ListView 和 @no__t 类中的 FindNearestItem 方法和 @no__t 3 类使用。This enumeration is used by the FindNearestItem methods in the ListView and ListViewItem classes, as well as by the SearchForVirtualItemEventArgs class. 识别 ListView 控件中最近的项可能会有所不同,具体取决于应用程序运行所在的操作系统;因此,搜索方向是一个提示,而不是结果的绝对保证。Identifying the nearest item in a ListView control can vary depending on the operating system the application is running on; therefore, the search direction is a hint, and not an absolute guarantee of results.

适用于