C#模糊查询 dataGridView 每个单元格是否包含 关键词并整行标红

                int row = dataGridView5.Rows.Count;//得到总行数

                int cell = dataGridView5.Rows[1].Cells.Count;//得到总列数

                string strTxt = textBox91.Text;//得到输入的字符串,并付值给变量

                Regex r = new Regex(strTxt); // 定义一个Regex对象实例

                for (int i = 0; i < row; i++)//得到总行数并在之内循环
                {

                    for (int j = 0; j < cell; j++)//得到总列数并在之内循环
                    {
                        //  Match m = r.Match(dataGridView5.Rows.Cells[j].Value.ToString()); // 在字符串中模糊匹配


                        Match m = r.Match(dataGridView5.Rows[i].Cells[j].Value.ToString()); // 在字符串中模糊匹配

                        if (m.Success)
                        { //对比TexBox中的值是否与dataGridView中的值相同(上面这句)

                            dataGridView5.CurrentCell = dataGridView5[j, i];//定位到相同的单元格

                            this.dataGridView5.Rows[i].DefaultCellStyle.BackColor = Color.Red;   ///这里是给查询到的行 标红

                            if (MessageBox.Show("是否需要继续查找?", "", MessageBoxButtons.OKCancel) == DialogResult.Cancel)
                            {

                                //如果选择了取消就会返回,如果选择了确定,就会继续查找匹配的.

                                return;//返回

                            }

                        }


                    }

                }

winform代码