使用文本框搜索給定datagridview列中的值時,下面的代碼將選定行放置在包含輸入文本的列上。如何在搜索文本框中輸入字符時突出顯示datagridview行
private void textBox1_TextChanged(object sender, EventArgs e)
{
//if (Char.IsLetter(e.KeyChar))
//{
for (int i = 0; i < (productDataGridView.Rows.Count); i++)
{
if (productDataGridView.Rows[i].Cells[1].Value.ToString().StartsWith(textBox1.Text, true, CultureInfo.InvariantCulture))
{
productDataGridView.FirstDisplayedCell = productDataGridView[1, i];
productDataGridView.CurrentRow.DefaultCellStyle.BackColor = System.Drawing.Color.Red;
return; // stop looping
}
}
}
的問題是,我不能突出或更改所需行的背景色,而在文本框中輸入任何幫助嗎?
不要相信FirstDisplayedCell該行設置爲當前。嘗試設置productDataGridView [1,i] .DefaultCellStyle.BackColor ...比CurrentRow更好嗎? – 2012-07-29 16:46:05
這是真的FirstDisplayedCell不會將行設置爲當前,有沒有辦法將其設置爲當前? – 2012-07-29 17:32:10
productDataGridView.CurrentRow = ... – 2012-07-29 19:29:01