MainForm.cs
上传用户:linger1010
上传日期:2008-12-08
资源大小:561k
文件大小:2k
源码类别:

Windows Mobile

开发平台:

C#

  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Drawing;
  6. using System.Text;
  7. using System.Windows.Forms;
  8. using Microsoft.WindowsMobile.PocketOutlook;
  9. namespace AccessingTasks
  10. {
  11. public partial class MainForm : Form
  12. {
  13. OutlookSession m_outlookSession;
  14. public MainForm()
  15. {
  16. InitializeComponent();
  17. m_outlookSession = new OutlookSession();
  18. m_refreshTasks();
  19. }
  20. private void m_refreshTasks()
  21. {
  22. m_lstTasks.Items.Clear();
  23. try
  24. {
  25. foreach(Task t in m_outlookSession.Tasks.Items)
  26. {
  27. ListViewItem item = new ListViewItem(
  28. new string[]
  29. {
  30. t.Subject,
  31. t.Importance.ToString(),
  32. t.StartDate.ToString(),
  33. t.Complete.ToString()
  34. });
  35. if(t.Importance == Importance.High)
  36. item.ForeColor = Color.Red;
  37. else if(t.Importance == Importance.Low)
  38. item.ForeColor = Color.DarkGray;
  39. if(t.Complete)
  40. item.BackColor = Color.LightGray;
  41. m_lstTasks.Items.Add(item);
  42. }
  43. }
  44. catch(Exception ex)
  45. {
  46. MessageBox.Show(
  47. String.Format("Error: {0}", ex.Message),
  48. "Refresh",
  49. MessageBoxButtons.OK,
  50. MessageBoxIcon.Hand,
  51. MessageBoxDefaultButton.Button1);
  52. }
  53. }
  54. private void m_mnuNew_Click(object sender, EventArgs e)
  55. {
  56. try
  57. {
  58. Task t = m_outlookSession.Tasks.Items.AddNew();
  59. t.ShowDialog();
  60. }
  61. catch(Exception ex)
  62. {
  63. MessageBox.Show(
  64. String.Format("Error: {0}", ex.Message),
  65. "Refresh",
  66. MessageBoxButtons.OK,
  67. MessageBoxIcon.Hand,
  68. MessageBoxDefaultButton.Button1);
  69. }
  70. }
  71. private void m_mnuDetails_Click(object sender, EventArgs e)
  72. {
  73. if(m_lstTasks.SelectedIndices.Count == 0)
  74. return;
  75. int activeIndex = m_lstTasks.SelectedIndices[0];
  76. Task activeTask = m_outlookSession.Tasks.Items[activeIndex];
  77. activeTask.ShowDialog();
  78. }
  79. private void MainForm_Activated(object sender, EventArgs e)
  80. {
  81. m_refreshTasks();
  82. }
  83. private void m_lstTasks_ItemActivate(object sender, EventArgs e)
  84. {
  85. m_mnuDetails_Click(sender, e);
  86. }
  87. }
  88. }