Exemple #1
0
 public void Log(string line)
 {
     Helper.ControlInvokeRequired(LogListView, () =>
     {
         LogListView.Items.Add(new ListViewItem(line));
         LogListView.EnsureVisible(LogListView.Items.Count - 1);
         LogListView.Refresh();
     });
 }
Exemple #2
0
 private void logTimer_Tick(object sender, EventArgs e)
 {
     if (logItemList.Count > 0)
     {
         LogListView.BeginUpdate();
         while (LogListView.Items.Count > 100)
         {
             LogListView.Items.RemoveAt(0);
         }
         LogListView.Items.AddRange(logItemList.ToArray());
         logItemList.Clear();
         if (LogListView.Items.Count > 0)
         {
             LogListView.EnsureVisible(LogListView.Items.Count - 1);
         }
         LogListView.EndUpdate();
     }
 }
 private void OnLogWrite(string from, string type, object content, LogLevel level)
 {
     LogListView.Invoke(new MethodInvoker(() =>
     {
         LogListView.Items.Add(new ListViewItem(DateTime.Now.ToString("HH:mm:ss")).Also(v =>
         {
             v.SubItems.Add(from);
             v.SubItems.Add(type);
             v.SubItems.Add(content.ToString());
             v.SubItems.Add("-");
             v.ForeColor = Color.FromKnownColor(level.GetAlias <KnownColor>());
         }));
         if (!RealTimeCheckbox.Checked)
         {
             return;
         }
         LogListView.EnsureVisible(LogListView.Items.Count - 1);
         LogListView.Items[LogListView.Items.Count - 1].Selected = true;
     }));
 }