Вы можете сделать ./(name of exe) < input.txt
, и если вы хотите записать вывод в текстовый файл, вы можете сделать:
./ (имя exe)> output.txt
Я думаю, вам нужно изменить подпись делегата:
ValueLabel.Dispatcher.BeginInvoke(DispatcherPriority.Normal, (ThreadStart)delegate(invalue1, invalue2){
ValueLabel.Content = ...
Также ищите, используя компонент BackgroundWorker. Не только для wpf, но и для асинхронных операций winform.
System.Windows.Forms.MethodInvoker - это просто делегат, который не принимает параметров и возвращает void. В WPF вы можете просто заменить его на System.Action . Есть также другие встроенные делегаты, которые принимают параметры , возвращают значения или оба .
В вашем случае
ValueLabel.Dispatcher.BeginInvoke(new System.Windows.Forms.MethodInvoker(delegate {
ValueLabel.Content = (inValue1* inValue2/ 1000).ToString("f1");
}));
становится
ValueLabel.Dispatcher.BeginInvoke(new Action(delegate() {
ValueLabel.Content = (inValue1* inValue2/ 1000).ToString("f1");
}));