Exemplo n.º 1
0
        private void LogScrollViewer_ScrollChanged(object sender, ScrollChangedEventArgs e)
        {
            // User scroll event : set or unset auto-scroll mode
            if (e.ExtentHeightChange == 0)
            {
                // Content unchanged : user scroll event
                if (LogScrollViewer.VerticalOffset == LogScrollViewer.ScrollableHeight)
                {
                    // Scroll bar is in bottom
                    // Set auto-scroll mode
                    AutoScroll = true;
                }
                else
                {
                    // Scroll bar isn't in bottom
                    // Unset auto-scroll mode
                    AutoScroll = false;
                }
            }

            // Content scroll event : auto-scroll eventually
            if (AutoScroll && e.ExtentHeightChange != 0)
            {
                // Content changed and auto-scroll mode set Autoscroll
                LogScrollViewer.ScrollToVerticalOffset(LogScrollViewer.ExtentHeight);
            }
        }
Exemplo n.º 2
0
 private void UpdateLog(string context, bool isClear = false)
 {
     if (isClear)
     {
         log.Clear();
     }
     OutputLog.Text = log.Append(context).ToString();
     LogScrollViewer.ScrollToBottom();
 }
Exemplo n.º 3
0
        void AppendProgress(string displayText, int fileIndex)
        {
            Action action = delegate() {
                tbLog.Text += displayText;
                LogScrollViewer.ScrollToVerticalOffset(LogScrollViewer.Height);
                edtProgress.EditValue = fileIndex;
            };

            this.Dispatcher.Invoke(action);
        }
Exemplo n.º 4
0
 private void LogMessage(string text)
 {
     ThreadUtility.RunOnUIThread(() =>
     {
         TextBlock textBlock = new TextBlock();
         textBlock.Text      = text;
         LogPanel.Children.Add(textBlock);
         LogScrollViewer.ChangeView(null, LogScrollViewer.ScrollableHeight, null);
     });
 }
Exemplo n.º 5
0
 private void Log(string message)
 {
     if (message == null)
     {
         throw new ArgumentNullException(nameof(message));
     }
     LogTextBlock.Text += message + " \n";
     // auto scroll
     LogScrollViewer.ChangeView(0, LogScrollViewer.ScrollableHeight, 1);
 }
        private void LogProgress(string logMessage)
        {
            if (String.IsNullOrEmpty(log))
            {
                log = logMessage;
            }
            else
            {
                log += "\n" + logMessage;
            }

            this.Dispatcher.Invoke((Action)(() =>
            {
                LogScrollViewer.ScrollToEnd();
            }));
        }
Exemplo n.º 7
0
        private void MainWindow_Loaded(object sender, RoutedEventArgs e)
        {
            viewModel.LoadData();

            // 로깅시 스크롤 내림
            Teller.TellerLogEvent += log => Dispatcher.Invoke(new Action(() => LogScrollViewer.ScrollToEnd()));

            // 계좌 날짜 컨트롤 제약 설정
            this.AccountTo.DisplayDateEnd         = this.AccountFrom.DisplayDateEnd = DateTime.Today;
            this.AccountTo.SelectedDateChanged   += AccountTo_SelectedDateChanged;
            this.AccountFrom.SelectedDateChanged += AccountFrom_SelectedDateChanged;

            // 도움말 파일 로드
            var textRange = new TextRange(HelpTextBox.Document.ContentStart, HelpTextBox.Document.ContentEnd);

            using (var fileStream = new System.IO.FileStream(ContentManager.getPath("readme.rtf"), System.IO.FileMode.Open))
                textRange.Load(fileStream, System.Windows.DataFormats.Rtf);
        }
Exemplo n.º 8
0
        private void RunScript_Click(object sender, RoutedEventArgs e)
        {
            var cmds = URScript.Text.Split('\n');

            for (int i = 0; i < cmds.Length; i++)
            {
                var cmd = cmds[i].Trim('\r') + '\n';
                urSec.Send(cmd);
            }

            URScript.Text = "";

            var resp = urSec.Receive();

            Logging.Text += resp + Environment.NewLine;

            LogScrollViewer.ScrollToBottom();
        }
Exemplo n.º 9
0
        private void UpdateLog(string text)
        {
            var log = new LogEntry(text);

            LogEntries.Add(log);
            if (string.IsNullOrEmpty(SearchString) || text.ToLower().Contains(SearchString.ToLower()))
            {
                FilteredLogEntries.Add(log);
            }
            if (LogEntries.Count > 1000)
            {
                LogEntries.Clear();
                FilteredLogEntries.Clear();
            }
            if (IsUserScrollingLog == false)
            {
                LogScrollViewer.ScrollToEnd();
            }
        }
Exemplo n.º 10
0
 public void Append(string text)
 {
     txtLog.Text += text;
     LogScrollViewer.ScrollToBottom();
 }
Exemplo n.º 11
0
 private void OnLogWritten(object sender, string e)
 {
     LogTextBox.Text += e;
     LogScrollViewer.ScrollToEnd();
 }
Exemplo n.º 12
0
 private void TextBlock_SizeChanged(object sender, SizeChangedEventArgs e)
 {
     LogScrollViewer.ScrollToBottom();
 }
Exemplo n.º 13
0
 private void Log(string msg)
 {
     LogTextBlock.Text += $"[ {DateTime.Now.ToString("HH:mm:ss fff")} ] {msg}\n";
     LogScrollViewer.ScrollToBottom();
 }