如何在gridview中搜索数据?

时间:2011-02-25 08:59:56

标签: c# asp.net gridview

使用一个下拉列表和文本框,我需要在gridview中搜索数据。 假设我在下拉列表中选择了1个项目,并在文本框中输入了一些文本。

3 个答案:

答案 0 :(得分:0)

您可以根据数据写入适当的sql查询并重新绑定gridview。 或者您可以过滤掉已经与gridview绑定的数据集,其值为dropdown&文本框。

答案 1 :(得分:0)

是的,如果您使用SQL数据源等,这很容易。您只需要提及filter expression和控件ID。因此,第一个控件(您的dropdownList)将包含过滤器值,如Name,Age,Date等。文本框将包含搜索文本。像这样的过滤表达式对于下拉列表值&表示{0}。 {1}用于文本框文本

CONVERT({0},'System.String') like '{1}%'

答案 2 :(得分:-1)

我不确定,但是:

string n = "";
int count = 0;

if (RadioButton1.Checked == true)
{
    ListBox3.Visible = true;

    int x = GridView1.Rows.Count;
    int o = GridView1.Columns.Count;

    String SearchItem = TextBox1.Text;
    for (int i = 0; i < x; i++)
    {
        for (int c = 0; c < o; c++)
        {
            if (SearchItem == GridView1.Rows[i].Cells[0].Text)
            {
                n = GridView1.Rows[i].Cells[1].Text + "  R" + GridView1.Rows[i].Cells[5].Text;
            }
        }
        ListBox3.Items.Add(n);
    }
} 
else if (RadioButton2.Checked == true)
{
    ListBox3.Visible = true;

    int x = GridView1.Rows.Count;
    int o = GridView1.Columns.Count;

    String SearchItem = TextBox1.Text;
    for (int i = 0; i < x; i++)
    {
        for (int c = 0; c < o; c++)
        {
            if (SearchItem == GridView1.Rows[i].Cells[3].Text)
            {
                count++;
                for (int a = 0; a < count; a++)
                {
                    ListBox3.Items.Add(GridView1.Rows[i].Cells[1].Text + "   R" + GridView1.Rows[i].Cells[5].Text);
                }
            }
        }  
    }
}