0

我已经设法在运行时替换了datagridview中的所有字符串。现在我想在单击按钮时一一替换字符串。这是单击一次按钮替换所有字符串的代码。

private void button9_Click_1(object sender, EventArgs e)
{
        var original = ((DataTable)dataGridView1.DataSource);
        var clone = original.Clone();
        var ordinal = original.Columns["Stringtext"].Ordinal;
        var tra = original.Columns[6].Ordinal;
        var che = original.Columns[10].Ordinal;
        for (int i = 0; i < original.Rows.Count; i++)
        {
            var values = original.Rows[i].ItemArray;
            if (Convert.ToBoolean(values[tra].ToString()) && Convert.ToBoolean(values[che].ToString()))
            {
                values[ordinal] = ((values[ordinal].ToString()).ToLower())
                    .Replace(textBox6.Text.ToLower(), textBox7.Text);
                clone.Rows.Add(values);
            }
            else
            {
                values[ordinal] = values[ordinal];
                clone.Rows.Add(values);
            }
        }
        dataGridView1.DataSource = clone;
        string filterBy;
        filterBy = "Stringtext Like '%" + textBox7.Text + "%'";
        ((DataTable)dataGridView1.DataSource).DefaultView.RowFilter = filterBy;
}

我想通过单击一个按钮来替换一行中的单个字符串,然后在下一个按钮上单击该行中的下一个字符串被替换。等等。有什么想法吗?

4

1 回答 1

1

做你想做的事情的简单方法是记录用户按下按钮的次数。这样你就可以知道这是用户第一次、第二次或第三次点击按钮,因此替换所需的单元格 private int counter = 0;

  private void button1_Click(object sender, EventArgs e)
  {
     // change the cell = counter
     counter++;
  }
于 2013-07-29T07:57:30.233 回答