Хотите добавить стандартный вывод процесса в Listview - PullRequest
1 голос
/ 09 февраля 2012

Я запускаю bat-файл из процесса и хочу добавить стандартный вывод в Listview, для которого я написал код ниже

 public void OutputHandler(object sendingProcess, DataReceivedEventArgs outLine)
    {
        if (!string.IsNullOrEmpty(outLine.Data))
        {
            Trace.WriteLine(outLine.Data);                
            WriteInListBox(outLine.Data.ToString());
        }
    }

    public delegate void WriteHandler(string s);
    private void WriteInListBox(string text)
    { 
        if (this.logText.InvokeRequired)
        {
            this.Invoke(new WriteHandler(WriteInListBox), new Object[] { text });
        }
        else
        {
             this.logText.Items.Add(Environment.NewLine + text);
        }
    }

Теперь попробуйте сначала написать строку в списке, тогда она никогда не появится в функции WriteInListBox и зависает

...