我有一个用于在DataGrid中搜索的TextBox,结果只选择DataGrid中的搜索行,所以我希望DataGrid只显示选定的行结果并隐藏所有其他行。
这是我的代码:
`
private void SearchTextBox_TextChanged(object sender, EventArgs e)
{
foreach (DataGridViewRow row in dgvUnit.Rows)
{
if(row.Cells["Id"].Value.ToString().ToLower().StartsWith(SearchTextBox.Text.ToLower()))
{
row.Selected = true;
}
}
}
`
答案 0 :(得分:0)
您可以操纵行可见性(无论是否使用DataSource
)
private void SearchTextBox_TextChanged(object sender, EventArgs e)
{
dgvUnit.CurrentCell = null;
foreach (DataGridViewRow row in dgvUnit.Rows)
{
if(row.Cells["Id"].Value.ToString().ToLower().StartsWith(SearchTextBox.Text.ToLower()))
{
row.Visible = true;
row.Selected = true;
}
else
{
row.Visible = false;
}
}
}