通过TextBox在DataGrid中搜索

时间:2013-10-02 17:20:07

标签: c# wpf datagrid

我有DataGrid,我想使用TextBox和搜索按钮添加搜索选项。结果应该是根据文本框内容选择整行。

我的代码是这样的:

public void search()
{
    String searchValue = textBox1.Text;
    int rowIndex = -1;
    foreach (//Row in MydataGrid)
    {
        if (row.Cells[1].Value.ToString().Equals(searchValue))
        {
            rowIndex = row.Index;
            break;
        }
    }
}

1 个答案:

答案 0 :(得分:1)

让我们假设您正在寻找具有此群组类的行:

public class Group
{
    public string Name { get; set; }
    public string FilePath { get; set; }
}

我在DataGrid中有一个只调用Group.Name:

的列
<DataGrid Name="dtgGroups">
    <DataGrid.Columns>
        <DataGridTextColumn Header="Group" Binding="{Binding Name}" />
    </DataGrid.Columns>
</DataGrid>

因此,如果要在Datagrid中搜索特定名称,可以使用:

private Group SearchGroup(string searchName)
{
    foreach (Group g in dtgGroups.Items)
    {
        if (g.Name == searchName) return g;
    }

    return null;
}

它将返回您搜索的组。