private void AppendLine(string line) { if (!_active) { return; } Opfer.AppendText(line); Opfer.AppendText(Environment.NewLine); if (_isAtEnd) { ScrollV.ScrollToEnd(); } }
private void MetroWindow_Loaded(object sender, RoutedEventArgs e) { _active = true; var vm = DataContext as OutputVM; if (vm == null) { return; } lock (vm) { Opfer.AppendText(vm.GetCurrentBufferedOutput()); vm.OutputReceived += OutputReceived; vm.OutputCleared += OutputCleared; ScrollV.ScrollToEnd(); _isAtEnd = true; } }