菜菜求救!!!!!!! 我现在有一个listview控件,显示有N个产品的编号,我现在想加个textbox控件,想实现在textbox控件里面输入某个产品部分编号,它就会在listview上自动查找产品编号,不知道怎样实现阿? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 本人代表本人严正声明: 此主帖在全世界只有一个沙发。沙发两边的扶手同属于一个沙发。任何企图想制造两个或两个以上沙发的,或是一个沙发一个板凳的行为,都必将遭到包括中国人民在内的全世界人民的反对和强烈谴责!在TextBox控件的Change事件中写入代码,然后再去ListView的ListItems里面去遍历搜索定位就可以了 只要实现textbox怎么和listview控件连接起来的也可以 这句不是很明白,请大虾说下在TextBox控件的Change事件中写入代码是什么意思啊?怎么在事件中写代码阿?不是都是在textbox双击后跳出来的目录下写的吗?本人刚学 请指点 在TextBox的TextChange事件里面写 http://blog.sina.com.cn/tangojay如果LZ说的是用TEXTBOX以及LISTVIEW生成如同GOOGLE搜索栏那种功能的话,看上面的网站,有说方法 不是,我只想实现,在N多得产品中,我输入关键的数字(比方数字1到10000,我在textbox控件上输入989,listview控件上就自动跳到989这个位子或是9开头的第一位)只是这样。。 不知道这个是不是你想要的this.listView1.SelectedItems.Clear(); ListViewItem _liv = new ListViewItem(this.textBox1.Text); foreach (ListViewItem liv in this.listView1.Items) { if(liv.Text == _liv.Text) { liv.Selected=true; break; } }记的设置他的 HideSelection=false 这个是在TextBox的TextChange事件里面写的 写在文本框的KeyPress事件里,这样每输入一个数字都会触发这个事件,然后得到输入内容,在listview的产品编号那个subitem里查找第一个并显示. private void Form1_Load(object sender, System.EventArgs e) { this.lv.Items.Add(new ListViewItem(new string[]{"000005"})); this.lv.Items.Add(new ListViewItem(new string[]{"000004"})); this.lv.Items.Add(new ListViewItem(new string[]{"000003"})); this.lv.Items.Add(new ListViewItem(new string[]{"000002"})); this.lv.Items.Add(new ListViewItem(new string[]{"000001"})); this.lv.Items.Add(new ListViewItem(new string[]{"000006"})); this.lv.Items.Add(new ListViewItem(new string[]{"000007"})); this.lv.Items.Add(new ListViewItem(new string[]{"000008"})); this.lv.Items.Add(new ListViewItem(new string[]{"000988"})); this.lv.Items.Add(new ListViewItem(new string[]{"000055"})); this.lv.Items.Add(new ListViewItem(new string[]{"000046"})); this.lv.Items.Add(new ListViewItem(new string[]{"000059"})); this.lv.Items.Add(new ListViewItem(new string[]{"000069"})); this.lv.Items.Add(new ListViewItem(new string[]{"000057"})); this.lv.Items.Add(new ListViewItem(new string[]{"000058"})); this.lv.Items.Add(new ListViewItem(new string[]{"000056"})); this.lv.Items.Add(new ListViewItem(new string[]{"000054"})); this.lv.Items.Add(new ListViewItem(new string[]{"000053"})); this.lv.Items.Add(new ListViewItem(new string[]{"000052"})); this.lv.Items.Add(new ListViewItem(new string[]{"000051"})); this.lv.Items.Add(new ListViewItem(new string[]{"000050"})); this.lv.Items.Add(new ListViewItem(new string[]{"000060"})); this.lv.Items.Add(new ListViewItem(new string[]{"980005"})); this.lv.Items.Add(new ListViewItem(new string[]{"970005"})); this.lv.Items.Add(new ListViewItem(new string[]{"960005"})); this.lv.Items.Add(new ListViewItem(new string[]{"950005"})); this.lv.Items.Add(new ListViewItem(new string[]{"940005"})); } private void lv_SelectedIndexChanged(object sender, System.EventArgs e) { for (int i=0;i<lv.Items.Count;i++) { ListViewItem lvi = new ListViewItem();// TextBox bo = new TextBox(); lvi.Tag = lv.Items[i];// this.textBox1.Tag = lv.Items[i];// bo.Tag = lv.Items[i]; lvi.Text = lv.Items[i].ToString().Trim();// this.textBox1.Text = lv.Items[i].ToString().Trim();// bo.Text = lv.Items[i]; lvi.SubItems.Add(lv.Items[i].ToString().Trim()); lvi.SubItems.Add(lv.Items[i].ToString().Trim());// lvi.SubItems.Add(dt.Rows[i][3].ToString());// lvi.SubItems.Add(dt.Rows[i][4].ToString());// lvi.SubItems.Add(dt.Rows[i][5].ToString()); this.liv.Items.Add( lvi ); return; } } private void textBox1_TextChanged(object sender, System.EventArgs e) { liv.Items.Clear(); for (int i=0;i<lv.Items.Count;i++) { if (textBox1.Text == lv.Items[i].ToString() ) { lv_SelectedIndexChanged(); } else MessageBox.Show("没有相关产品");//这句提示说重载方法未获取0参数。是哪错了呢,还是我这样写的代码本身就已经错了呢? return; } }希望大虾们指点下。 lv_SelectedIndexChanged(); //这句提示说重载方法未获取0参数。是哪错了呢,还是我这样写的代码本身就已经错了呢? 是这句上面错了 liv.Item[i].Selected = true; 下载软件时推荐电信或网通线路 窗体间传值问题 C#连接sql dll文件具体实现步骤 c#开发数据采集器都要用到什么知识点? 请高手指点迷津 救急啊~~~treeview 大虾,谁做过语音诱导~~~~!帮帮忙啊! 哪有MSDN下载? 关于动态抓取数据(RSS) 请教:关于DataSet性能的问题? 关于SQL2000和SQL2005的问题,为什么我得SQL2000的企业管理器打开10秒钟左右会自动关闭呢 【大家来测试一下是不是.NET的BUG? 】 有关Tree View 和Button问题
此主帖在全世界只有一个沙发。沙发两边的扶手同属于一个沙发。任何企图想制造两个或两个以上沙发的,或是一个沙发一个板凳的行为,都必将遭到包括中国人民在内的全世界人民的反对和强烈谴责!在TextBox控件的Change事件中写入代码,然后再去ListView的ListItems里面去遍历搜索定位就可以了
怎么在事件中写代码阿?不是都是在textbox双击后跳出来的目录下写的吗?
本人刚学 请指点
this.listView1.SelectedItems.Clear();
ListViewItem _liv = new ListViewItem(this.textBox1.Text);
foreach (ListViewItem liv in this.listView1.Items)
{
if(liv.Text == _liv.Text)
{
liv.Selected=true;
break;
}
}记的设置他的 HideSelection=false
{
this.lv.Items.Add(new ListViewItem(new string[]{"000005"}));
this.lv.Items.Add(new ListViewItem(new string[]{"000004"}));
this.lv.Items.Add(new ListViewItem(new string[]{"000003"}));
this.lv.Items.Add(new ListViewItem(new string[]{"000002"}));
this.lv.Items.Add(new ListViewItem(new string[]{"000001"}));
this.lv.Items.Add(new ListViewItem(new string[]{"000006"}));
this.lv.Items.Add(new ListViewItem(new string[]{"000007"}));
this.lv.Items.Add(new ListViewItem(new string[]{"000008"}));
this.lv.Items.Add(new ListViewItem(new string[]{"000988"}));
this.lv.Items.Add(new ListViewItem(new string[]{"000055"}));
this.lv.Items.Add(new ListViewItem(new string[]{"000046"}));
this.lv.Items.Add(new ListViewItem(new string[]{"000059"}));
this.lv.Items.Add(new ListViewItem(new string[]{"000069"}));
this.lv.Items.Add(new ListViewItem(new string[]{"000057"}));
this.lv.Items.Add(new ListViewItem(new string[]{"000058"}));
this.lv.Items.Add(new ListViewItem(new string[]{"000056"}));
this.lv.Items.Add(new ListViewItem(new string[]{"000054"}));
this.lv.Items.Add(new ListViewItem(new string[]{"000053"}));
this.lv.Items.Add(new ListViewItem(new string[]{"000052"}));
this.lv.Items.Add(new ListViewItem(new string[]{"000051"}));
this.lv.Items.Add(new ListViewItem(new string[]{"000050"}));
this.lv.Items.Add(new ListViewItem(new string[]{"000060"}));
this.lv.Items.Add(new ListViewItem(new string[]{"980005"}));
this.lv.Items.Add(new ListViewItem(new string[]{"970005"}));
this.lv.Items.Add(new ListViewItem(new string[]{"960005"}));
this.lv.Items.Add(new ListViewItem(new string[]{"950005"}));
this.lv.Items.Add(new ListViewItem(new string[]{"940005"}));
} private void lv_SelectedIndexChanged(object sender, System.EventArgs e)
{
for (int i=0;i<lv.Items.Count;i++)
{
ListViewItem lvi = new ListViewItem();
// TextBox bo = new TextBox();
lvi.Tag = lv.Items[i];
// this.textBox1.Tag = lv.Items[i];
// bo.Tag = lv.Items[i];
lvi.Text = lv.Items[i].ToString().Trim();
// this.textBox1.Text = lv.Items[i].ToString().Trim();
// bo.Text = lv.Items[i];
lvi.SubItems.Add(lv.Items[i].ToString().Trim());
lvi.SubItems.Add(lv.Items[i].ToString().Trim());
// lvi.SubItems.Add(dt.Rows[i][3].ToString());
// lvi.SubItems.Add(dt.Rows[i][4].ToString());
// lvi.SubItems.Add(dt.Rows[i][5].ToString());
this.liv.Items.Add( lvi );
return;
}
} private void textBox1_TextChanged(object sender, System.EventArgs e)
{
liv.Items.Clear();
for (int i=0;i<lv.Items.Count;i++)
{
if (textBox1.Text == lv.Items[i].ToString() )
{
lv_SelectedIndexChanged();
}
else MessageBox.Show("没有相关产品");
//这句提示说重载方法未获取0参数。是哪错了呢,还是我这样写的代码本身就已经错了呢?
return;
}
}
希望大虾们指点下。
//这句提示说重载方法未获取0参数。是哪错了呢,还是我这样写的代码本身就已经错了呢? 是这句上面错了