⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frm_main.cs

📁 Wince 上操作短信的实例
💻 CS
字号:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using Microsoft.WindowsMobile.PocketOutlook;
using Microsoft.WindowsMobile.Forms;
using System.Collections;
namespace winceSms
{
    public partial class frm_Main : Form
    {        
        // public override sealed event ListChangedEventHandler ListChanged;
        ContactCollection contacts;
        private ArrayList phones = new ArrayList();
        
        
        public frm_Main()
        {
            InitializeComponent();
            bindData();
            //     ListChanged=new ListChangedEventHandler(contactchanged);
            //     contacts.ListChanged+= ListChanged;
            //   contacts.SupportsChangeNotification = true;
        }

        public void bindData()
        {
            phones = new ArrayList();
            OutlookSession session = new OutlookSession();
            //session.Contacts.Items[0].ItemId
            
            //contacts = session.Contacts.Items;
            //contacts = session.Contacts.Items[0];
            treeView1.Nodes.Clear();
            //contacts.Sort("LastName", false);
            session.Contacts.Items.Sort("LastName", false);
            TreeNode node = null;
            for (int i = 0; i < session.Contacts.Items.Count; i++)
            {
                TreeNode contactPhone = this.GetContactPhone(session.Contacts.Items[i]);
                if ((i % 15) == 0)
                {
                    node = new TreeNode(session.Contacts.Items[i].LastName + session.Contacts.Items[i].FirstName);
                    this.treeView1.Nodes.Add(node);
                }
                if ((contactPhone != null) & (node != null))
                {
                    node.Nodes.Add(contactPhone);
                }
            }
        }

        public TreeNode GetContactPhone(Contact c)
        {
            ArrayList list = new ArrayList();
            TreeNode node = new TreeNode(c.LastName + c.FirstName);
            if (c.Business2TelephoneNumber != "")
            {
                list.Add(c.Business2TelephoneNumber);
            }
            if (c.BusinessTelephoneNumber != "")
            {
                list.Add(c.BusinessTelephoneNumber);
            }
            if (c.MobileTelephoneNumber != "")
            {
                list.Add(c.MobileTelephoneNumber);
            }
            if (c.Home2TelephoneNumber != "")
            {
                list.Add(c.Home2TelephoneNumber);
            }
            if (c.HomeTelephoneNumber != "")
            {
                list.Add(c.HomeTelephoneNumber);
            }
            if (c.RadioTelephoneNumber != "")
            {
                list.Add(c.RadioTelephoneNumber);
            }
            if (list.Count == 0)
            {
                node = null;
            }
            if (list.Count == 1)
            {
                //node.Tag = list[0];
                node.Tag = c.ItemId;
                node.Text = string.Format("{0}  电话:{1}", node.Text, list[0]);
                return node;
            }
            TreeNode[] nodeArray = new TreeNode[list.Count];
            for (int i = 0; i < list.Count; i++)
            {
                nodeArray[i] = new TreeNode(list[i].ToString());
                //nodeArray[i].Tag = list[i].ToString();
                nodeArray[i].Tag = c.ItemId;
                node.Nodes.Add(nodeArray[i]).ToString();
            }
            return node;
        }

        private void setphones()
        {
            if (treeView1.SelectedNode != null & treeView1.SelectedNode.Tag != null)
            {
                treeView1.SelectedNode.Checked = !treeView1.SelectedNode.Checked;
                // treeView1.SelectedNode.Toggle();
                string nowphone = treeView1.SelectedNode.Tag.ToString();
                if (treeView1.SelectedNode.Checked)
                {
                    phones.Add(nowphone);
                    treeView1.SelectedNode.ImageIndex = 2;
                    treeView1.SelectedNode.SelectedImageIndex = 2;
                }
                else
                {
                    phones.Remove(nowphone);
                    treeView1.SelectedNode.ImageIndex = 0;
                    treeView1.SelectedNode.SelectedImageIndex = 0;
                }
                treeView1.Refresh();
            }
        }

        public string GetPones()
        {
            if (phones.Count == 0)
            {
                MessageBox.Show("没有选中项");
                return "";
            }
            else
            {
                return string.Join(",", (string[])phones.ToArray("".GetType()));
            }
        }

        private void treeView1_KeyPress(object sender, KeyPressEventArgs e)
        {
            if (e.KeyChar == '\r')
            {
                this.setphones();
            }
        }

        private void treeView1_AfterSelect(object sender, TreeViewEventArgs e)
        {
            try
            {
                bool checkBoxes = this.treeView1.CheckBoxes;
                this.setphones();
            }
            catch (Exception)
            {
            }
        }

        private void menuItem1_Click(object sender, EventArgs e)
        {
            frm_AddTel fm = new frm_AddTel();
            fm.ShowDialog();
            fm.Dispose();
            bindData();
        }

        private void menuItem2_Click(object sender, EventArgs e)
        {
            MessageBox.Show(GetPones());
        }
    }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -