【问题标题】:How to fill datagridview a "-" delimited text from a richtextbox如何从富文本框中填充 datagridview 一个“-”分隔的文本
【发布时间】:2014-10-07 09:35:13
【问题描述】:

如何用我的 Richtextbox 中的 - 分隔文本填充我的 datagridview?

示例:

我的富文本框内容:

000001-Kobe-Bryant-24-Lakers

000002-Lebron-James-23-Cavaliers

000003-Derick-Rose-1-Bulls

000004-Kevin-Durant-35-Thunders

那么我的datafridview上的输出应该是这样的

PlayerID | Name    |  LastName    |    Number      |     Team     |
-------------------------------------------------------------------
000001   |Kobe     |  Bryant      | 24             |Lakers        |
-------------------------------------------------------------------
000002   |Lebron   | James        | 23             |Cavaliers     |
-------------------------------------------------------------------
000003   |Derick   |Rose          | 1              |Bulls         |
-------------------------------------------------------------------
000004   |Kevin    |Durant        |35              |Thunders      |

我不能放图片,所以只画一个datagridview。

这是我正在使用的代码

    private void button2_Click(object sender, EventArgs e)
    {
        String delimitedText = richTextBox1.Text;
        string[] holder = Regex.Split(richTextBox1.Text, "-");

        // Populating into datagrid

        dataGridView1.Rows[0].Cells[0].Value = holder[0].ToString();
        dataGridView1.Rows[0].Cells[1].Value = holder[1].ToString();
        dataGridView1.Rows[0].Cells[2].Value = holder[2].ToString();
        dataGridView1.Rows[0].Cells[3].Value = holder[3].ToString();
        dataGridView1.Rows[0].Cells[4].Value = holder[4].ToString();
    }

它只是保存第一行。

请有人帮我解决这个问题。

【问题讨论】:

  • 也要努力。提供你的一些代码。
  • 逐行循环你的richtextbox..here's如何循环richtextbox

标签: c# datagridview textbox delimiter


【解决方案1】:

使用 C# 拆分选项获取数组中的分隔字符串,然后将其填充到数据网格中。

例子:

String delimitedText = "000001-Kobe-Bryant-24-Lakers";
string[] stringObjects = delimitedText.Split('-');

// Populating into datagrid

dataGridView1.rows[0].cells[0] = stringObjects[0];
dataGridView1.rows[0].cells[1] = stringObjects[1];
dataGridView1.rows[0].cells[2] = stringObjects[2];

谢谢

【讨论】:

  • 谢谢先生的回答。
  • 感谢您的帮助,先生。但这是我已经在使用的代码。它没有为下一行保存
【解决方案2】:
private void button2_Click(object sender, EventArgs e)
{
  for (int i = 0; i < richTextBox1.Lines.Length; i++)
  {
    String delimitedText = richTextBox1.Lines[i];
    string[] holder = Regex.Split(delimitedText, "-");

    // Populating into datagrid
    dataGridView1.Rows.Add();
    dataGridView1.Rows[i].Cells[0].Value = holder[0].ToString();
    dataGridView1.Rows[i].Cells[1].Value = holder[1].ToString();
    dataGridView1.Rows[i].Cells[2].Value = holder[2].ToString();
    dataGridView1.Rows[i].Cells[3].Value = holder[3].ToString();
    dataGridView1.Rows[i].Cells[4].Value = holder[4].ToString();
  }
}

【讨论】:

  • 在上面的代码中更改这一行 string[] holder = Regex.Split(delimitedText, "-");
  • 先生没有错误。它不是循环的。它只是留在第一线
  • 我不知道你做得对不对。代码工作正常。 Screenshot
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-27
  • 2021-12-04
  • 1970-01-01
相关资源
最近更新 更多