Advertisement
Guest User

Untitled

a guest
Jan 16th, 2017
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.08 KB | None | 0 0
  1. public class BaseForm : Form
  2. {
  3. public BaseForm()
  4. {
  5. if (LicenseManager.UsageMode == LicenseUsageMode.Designtime) return;
  6. this.Load += BaseForm_Load;
  7. this.FormClosed += BaseForm_FormClosed;
  8. }
  9. private IEnumerable<Control> GetAllControls(Control control)
  10. {
  11. var controls = control.Controls.Cast<Control>();
  12. return controls.SelectMany(ctrl => GetAllControls(ctrl)).Concat(controls);
  13. }
  14. void BaseForm_FormClosed(object sender, FormClosedEventArgs e)
  15. {
  16. Log(string.Format("{0} Closed", this.Name));
  17. }
  18. void BaseForm_Load(object sender, EventArgs e)
  19. {
  20. Log(string.Format("{0} Opened", this.Name));
  21. GetAllControls(this).OfType<Button>().ToList()
  22. .ForEach(x => x.Click += ButtonClick);
  23. }
  24. void ButtonClick(object sender, EventArgs e)
  25. {
  26. var button = sender as Button;
  27. if (button != null) Log(string.Format("{0} Clicked", button.Name));
  28. }
  29. public void Log(string text)
  30. {
  31. var file = System.IO.Path.Combine(Application.StartupPath, "log.txt");
  32. text = string.Format("{0} - {1}", DateTime.Now, text);
  33. System.IO.File.AppendAllLines(file, new string[] { text });
  34. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement