使用文本文件中的值填充列表框

时间:2013-10-23 07:05:53

标签: c# file-io io listbox

我的代码存在问题。我的代码必须从文本文件中读出值。但是当我把文本文件的值放在我的列表框中时,它就像这样:

commandlistbox

所以命令或值都在一行中。 我希望命令是这样的,我已经改变了图片,所以你可以看到:

enter image description here

所以你看到了吗?我希望命令在彼此之下。这是我读取文本文件的代码:

private void CommandFileSelectButton_Click(object sender, EventArgs e)
    {
        Stream mystream;
        OpenFileDialog commandFileDialog = new OpenFileDialog();


        if (commandFileDialog.ShowDialog() == DialogResult.OK)
        {
            if ((mystream = commandFileDialog.OpenFile())!= null)
            {
                string fileName = commandFileDialog.FileName;
                CommandListTextBox.Text = fileName;
                string fileText = File.ReadAllText(fileName);
                _commandList.Add(fileText);
                CommandListListBox.DataSource = _commandList;
            }

        }
    }

_commandList是我的同事所做的本地功能。

这是TextFile看起来的方式:

RUN 
RUNW
STOP
RUN
RUN
STOP

提前感谢您的帮助。

3 个答案:

答案 0 :(得分:3)

CommandListListBox.DataSource = File.ReadAllLines(fileName);

答案 1 :(得分:2)

如果_commandList的类型为System.Collection.Generic.List<string>,您可以使用以下代码段:

_commandList.AddRange(System.IO.File.ReadAllLines(fileName));

完整代码:

private void CommandFileSelectButton_Click(object sender, EventArgs e)
{
    Stream mystream;
    OpenFileDialog commandFileDialog = new OpenFileDialog();


    if (commandFileDialog.ShowDialog() == DialogResult.OK)
    {
        if ((mystream = commandFileDialog.OpenFile())!= null)
        {
            string fileName = commandFileDialog.FileName;
            CommandListTextBox.Text = fileName;
            _commandList.AddRange(System.IO.File.ReadAllLines(fileName));
            CommandListListBox.DataSource = _commandList;
        }

    }
}

答案 2 :(得分:2)

试试这个!

// Open the file to read from. 
 string[] readText = File.ReadAllLines(fileName);
        foreach (string fileText in readText)
        {
            _commandList.Add(fileText);
        }