将逗号分隔的项目从多行文本框移动到列表框

时间:2014-10-27 18:08:56

标签: c# sql asp.net

我有一个多行文本框,其中包含逗号分隔值,例如:java,sql,php我希望所有文本项都移动到列表框,点击添加按钮mu所需输出: java的 SQL php

 StringBuilder bulder = new StringBuilder();
        string[] oldstring = { TextBox1.Text};
        foreach (string str in oldstring)
        {
            bulder.Append(str);
            bulder.Append(",");
        }
        string[] newstring = bulder.ToString().Split(',');
        TextBox1.Text = bulder.ToString().TrimEnd(',');

通过使用这段代码获取值为java,sql,php只是在这里做错了什么?

1 个答案:

答案 0 :(得分:1)

您没有正确分割TextBox1.Text:您不是将每一行都作为单独的string阅读。您正在读取整个字符串然后将其拆分。

你可以更简单地完成你的要求。这是我认为你想要做的简单版本,如果需要甚至可以进一步简化。

private void button1_Click(object sender, EventArgs e)
{
    string[] oldString = TextBox1.Text.Split(
        new string[]{","},
        StringSplitOptions.RemoveEmptyEntries);
    ListBox1.Items.AddRange(oldString);
}

这是一个按钮点击事件,它将文字从TextBox1分割为,个字符,然后使用ListBox1方法将每个项目添加到Items.AddRange(string[] items)

如果我们想要一次手动更新列表框,我们可以使用foreach循环。

private void button1_Click(object sender, EventArgs e)
{
    string[] oldString = TextBox1.Text.Split(
        new string[]{","},
        StringSplitOptions.RemoveEmptyEntries);
    foreach (string item in oldString)
    {
        ListBox1.Items.Add(item);
    }
}