当前位置: 首页 > 图文教程 > .Net技术 > C# > C#:小编教大家如何向ListView控件添加搜索功能

C#
C#和Java的区别
提高C#编程水平的50个要诀
GridView 删除/更新/取消
c#线程
C#泛型有什么好处
总体了解C#
C#2.0匿名函数
GridView中添加一个CheckBox列
C#2.0介绍之Iterators(迭代器)
.NET与Java间进行Web Service交互的选择
C# 2010命名和可选参数的新特性
利用C#远程存取Access数据库
C#中foreach基础使用方法
C#中用鼠标移动页面功能的实现
C# 4.0中泛型协变性和逆变性详解
C#:C# .Net中的类型相互转换教程
C#:C#中的基元类型
C#:语言中的重要知识详细介绍与解释
C#:浅谈C#中的集合对象(Collections)
C#:C#发起邮件会议

C#:小编教大家如何向ListView控件添加搜索功能


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 603 ::
收藏到网摘: n/a

ListView控件有两种不同的方式提供搜索功能:文本匹配和位置搜索,即使用ListView控件的FindItemWithText方法和FindNearestItem方法来实现。FindItemWithText方法允许在处于列表或详细信息视图的ListView上执行文本搜索,要求给定搜索字符串和可选的起始和结束索引。FindNearestItem方法允许在处于图标或平铺视图的ListView中查找项,要求给定一组X坐标和Y坐标以及一个搜索方向。

下面的实例演示使用FindItemWithText方法来搜索。

(1)       创建一个ListViewView属性设置为DetailsList,然后用项填充该ListView

(2)       调用FindItemWithText方法,向其传递要查找的项文本。

下面小编给出大家主要代码:

Private void textBox1_TextChanged(object sender,EventArgs e)

{

 ListViewItem foundItem=listView1.FindItemWithText(textBox1.Text,false,0,true);

   If(foundItem!=null)

   {

     listView1.TopItem=foundItem;

     listView1.FindItemWithText(textBox1.Text,false,0,true).BackColor=Color.Beige;

   }

   Else

   {

     MessageBox.Show(“没有找到信息”);

     textBox1.Text=””;

   }

}

下面的实例演示使用FindNearestItem方法来搜索。

(1)       创建一个ListViewView属性设置为DetailsList,然后用项填充该ListView

(2)       调用FindItemWithText方法,向其传递要查找的项的文本。

运行程序,选择FindNearestItem窗体,单击控件中的项查找,主要代码如下:

Private void list View1_MouseDown(object sender,MouseEventArgs e)

{

   ListViewItem foundItem=this.listView1.FindNearestItem(SearchDirectionHint.Up,e.X,e.Y);

  If(foundItem!=null)

  {

    This.textBox1.Text=foundItem.Text;

  }else

{

  this.textBox1.Text=”No item found”

}

}