我怎么做创建的找到类似的Excel? [英] how i do create find similar excel?

查看:205
本文介绍了我怎么做创建的找到类似的Excel?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想创建形式搜索类似EXCEL,发现放(行)在列表视图
这是我的表:

i want create search in form similar EXCEL , find and put (row) in listview this my form :

和我的代码:

private int searchIndex = -1;
    private void button1_Click(object sender, EventArgs e)
    {
        button1.Text = "Find Next";
        try
        {
            for (int i = 0; i < dataGridView1.Rows.Count; i++)
            {
                searchIndex = (searchIndex + 1) % dataGridView1.Rows.Count;
                DataGridViewRow row = dataGridView1.Rows[searchIndex];
                if (row.Cells["Product"].Value == null)
                {
                    continue;
                }

                if (row.Cells["Product"].Value.ToString().Trim().StartsWith(textBox1.Text) || row.Cells["Product"].Value.ToString().Trim().Contains(textBox1.Text))
                {
                    ListViewItem lvi = new ListViewItem(row.Cells["Product"].Value.ToString()); 
                    lvi.SubItems.Add(row.Cells["Product"].Value.ToString());
                    listView1.Items.Add(lvi);
                    dataGridView1.CurrentCell = row.Cells["Product"];
                    dataGridView1.FirstDisplayedScrollingRowIndex = dataGridView1.Rows[row.Index].Index;
                    row = dataGridView1.Rows[i];
                    return;
                }
            }
        }
        catch { }
    }

和在textbox1_textchanged:

and in textbox1_textchanged :

searchIndex = -1;
        button1.Text = "Find";
        listView1.Clear();



我要当搜索结束,发送短信...
感谢

I want when search end, send message ... thanks

推荐答案

模仿查找全部的功能,填入你的的ListView 将是非常相似的查找下一个功能。下面是一个例子,如果它是由一个单独的按钮查找下一个

Mimicking the Find All functionality, populating your ListView will be very similar to the Find Next functionality. Here's an example if it were a separate button from Find Next:

public Form1()
{
  InitializeComponent();
  listView1.View = View.Details;
  listView1.Columns.Add("Column");
  listView1.Columns.Add("Row");
  listView1.Columns.Add("Value");
}

private void button2_Click(object sender, EventArgs e)
{
  button2.Text = "Find All";
  int tempIndex = -1;
  listView1.Items.Clear();

  for (int i = 0; i < dataGridView1.Rows.Count; i++)
  {
    tempIndex = (tempIndex + 1) % dataGridView1.Rows.Count;
    DataGridViewRow row = dataGridView1.Rows[tempIndex];

    if (row.Cells["Foo"].Value == null)
    {
      continue;
    }

    if (row.Cells["Foo"].Value.ToString().Trim().StartsWith(textBox1.Text) || row.Cells["Foo"].Value.ToString().Trim().Contains(textBox1.Text))
    {
      DataGridViewCell cell = row.Cells["Foo"];
      ListViewItem lvRow = new ListViewItem(new string[] { cell.ColumnIndex.ToString(), cell.RowIndex.ToString(), cell.Value.ToString() });
      listView1.Items.Add(lvRow);
    }
  }

  MessageBox.Show("Search ended."); // Or whatever message you intend to send.
}



这篇关于我怎么做创建的找到类似的Excel?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆