我将日志文件连续写入datagridview。 但是我想在点击时突出显示搜索栏中的行。 我可以轻松地从Ios中查看10000行日志,因此我希望它尽可能高效。
我该怎么办? 以前这是我做的,它给出了错误。当我运行它时,它不起作用并崩溃。
private void searchBtn_Click(object sender, EventArgs e)
{
string search = textBox2.Text;
if (search != null)
{
for (int i = 0; i < dataGridView1.Rows.Count; i++)
{
if (dataGridView1.Rows[i].Cells[0].Value == search)
{
dataGridView1.Rows[i].Selected = true;
dataGridView1.Rows[i].Visible = true;
}
else
{
dataGridView1.Rows[i].Visible = false;
dataGridView1.Rows[i].Selected = false;
}
}
}
}
答案 0 :(得分:0)
可以尝试 DataGridView 的 CellFormatting 事件
如果匹配textBox1.Text:
,这样的字体会使字体变为红色private void dataGridView1_CellFormatting(object sender, DataGridViewCellFormattingEventArgs e)
{
// Change the font color of the row if the textBox1.Text string matches a value on the dataGridView
if (textBox1.Text == Convert.ToString(e.Value))
{
this.dataGridView1.Rows[e.RowIndex].DefaultCellStyle.ForeColor = Color.Red; // Set font color red
this.dataGridView1.Rows[e.RowIndex].DefaultCellStyle.Font = new System.Drawing.Font(this.Font, FontStyle.Bold); // Set Bold
}
}