代码改变世界

带搜索文本框的ComboboxDatagridView

2010-06-25 16:21  Daniel Xu  阅读(1098)  评论(0编辑  收藏  举报

  ComboBoxDataGridView非常好用的组件,前面两篇文章介绍了ComboBoxDataGridView的初级应用,今天在介绍一个实用的功能,带搜索文本框的ComboBoxDataGridView。日常的应用时,由于数据量比较大,查找自己想要的数据非常不容易,如果能有个检索,会给简化我们的工作量,经过试验发现还是能够实现这个功能的。

实现这个功能首先得感谢,下面链接的两篇博客的博主,我是在他们的博文下的启发下修改的程序。

http://www.cnblogs.com/CodeAnyWhere/archive/2005/12/13/296461.html,

http://www.cnblogs.com/perfect/archive/2008/02/22/1078189.html

在属性下添加如下代码段

搜索文本框
#region 搜索文本框

[Description(
"空值时的默认值"), Browsable(true), Category("N8")]
public string NullValue
{
set
{
m_NullValue
= value;
}
get
{
return m_NullValue;
}
}
[Description(
"查询关键字"), Browsable(true), Category("N8")]
public string sKeyWords
{
get
{
return m_sKeyWords;
}
set
{
m_sKeyWords
= value;
}
}
[Description(
"文本框显示字段用逗号分割!"), Browsable(true), Category("N8")]
public string sDisplayMember
{
set
{
m_sDisplayMember
= value;

}
get
{
return m_sDisplayMember;
}
}
[Description(
"是否显示条件输入窗口!"), Browsable(true), Category("N8")]
public bool RowFilterVisible
{
set
{
dropDown.Items[
0].Visible = value;
}
get
{
return dropDown.Items[0].Visible;
}
}
[Description(
"取值字段"), Browsable(true), Category("N8")]
public string sValueMember
{
set
{
m_sValueMember
= value;
}
get
{
return m_sValueMember;
}
}
public DataView DataView
{
get
{
DataTable dataTable
= GetDataTableFromDataSource();
if (dataTable == null)
{
return null;
}
return dataTable.DefaultView;
}
}

#endregion

在使用ComboboxDataGridView地方设置文本框显示就可以

this.cbodgvWarehouser.RowFilterVisible = true
程序运行,点击下拉comboboxdatagridview,你就会发现多出一个搜索的文本框

看下搜索的效果吧

  后记:发挥你的想象力,简单你的生活。