首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >C#通讯录——Windows Form Contact List

C#通讯录——Windows Form Contact List

作者头像
landv
发布2018-05-24 16:18:31
6640
发布2018-05-24 16:18:31
举报
文章被收录于专栏:landvlandv

C#通讯录

Windows Form Contact List

主窗口

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.IO;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace WindowsFormsApplication2
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private Contact[] phoneBook = new Contact[1];
        private void Write(Contact obj)
        {

                StreamWriter sw = new StreamWriter("contact.txt");
                sw.WriteLine(phoneBook.Length + 1);
                sw.WriteLine(obj.FirstName);
                sw.WriteLine(obj.LastName);
                sw.WriteLine(obj.Phone);

                for (int x = 0; x < phoneBook.Length; x++)
                {
                    sw.WriteLine(phoneBook[x].FirstName);
                    sw.WriteLine(phoneBook[x].LastName);
                    sw.WriteLine(phoneBook[x].Phone);
                }
                sw.Close();

        }
        private void Read()
        {
            

                StreamReader sr = new StreamReader("contact.txt");
                phoneBook = new Contact[Convert.ToInt32(sr.ReadLine())];

                for (int x = 0; x < phoneBook.Length; x++)
                {
                    phoneBook[x] = new Contact();
                    phoneBook[x].FirstName = sr.ReadLine();
                    phoneBook[x].LastName = sr.ReadLine();
                    phoneBook[x].Phone = sr.ReadLine();
                }
                sr.Close();

        }
        private void Display()
        {
           
                lstContacts.Items.Clear();
                for (int x = 0; x < phoneBook.Length; x++)
                {
                    lstContacts.Items.Add(phoneBook[x].ToString());
                }
            
        }
        private void ClearForm()
        {
            textFirstName.Text = string.Empty;
            textLastName.Text = string.Empty;
            textPhone.Text = string.Empty;

        }
        private void btnAddContact_Click(object sender, EventArgs e)
        {
            Contact obj = new Contact();
            obj._Contact(textFirstName.Text,textLastName.Text,textPhone.Text);

            //lstContacts.Items.Add(obj.ToString());
            BubbleSort();
            FileIf();
            Write(obj);
            Read();
            Display();
            ClearForm();

        }
        private void FileIf()
        {
            if (File.Exists("contact.txt"))
            {
                return;
            }else
            {
                FileStream NewText = File.Create("contact.txt");
                NewText.Close();
            }

        }
        private void Form1_Load(object sender, EventArgs e)
        {
            FileIf();
            Read();
            Display();
        }
        private void  BubbleSort()
        {
            Contact temp;
            bool swap;
            do
            {
                swap = false;
                for(int x = 0; x<(phoneBook.Length -1);x++)
                {
                    if (phoneBook[x].LastName.CompareTo(phoneBook[x+1].LastName)>0){
                        temp = phoneBook[x];
                        phoneBook[x]=phoneBook[x+1];
                        phoneBook[x+1]=temp;
                        swap =true;
                    }
                }
            }while(swap == true);
        }

        private void btnSort_Click(object sender, EventArgs e)
        {
            BubbleSort();
            Display();
        }
       
    }//end of class
}//end of namespace

Contact类

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace WindowsFormsApplication2
{

    class Contact
    {

        //public Contact()
        //{
        //    FirstName = "landv";
        //    LastName = "li";
        //    Phone = "13903120312";

        //}
        //public Contact(string _FirstName, string _LastName, string _Phone)
        //{
        //    FirstName = _FirstName;
        //    LastName = _LastName;
        //    Phone = _Phone;
        //}
       
        public void  _Contact(string _FirstName, string _LastName, string _Phone)
        {
            FirstName = _FirstName;
            LastName = _LastName;
            Phone = _Phone;
        }

        private string _FirstName;
        private string _LastName;
        private string _Phone;

        public string FirstName
        {
            get { return _FirstName; }
            set { _FirstName = value; }
        }
        public string LastName
        {
            get { return _LastName; }
            set { _LastName = value; }
        }
        public string Phone
        {
            get { return _Phone; }
            set 
            {
                if(value.Length == 11)
                {
                    _Phone = value;
                }
                else
                {
                    _Phone = "11111111111";
                }
            }
        }

    
       public override string ToString()
       {
           string output = string.Empty;
           output += string.Format("{0},{1}", LastName, FirstName);
           output += string.Format(",{0} {1} {2}", Phone.Substring(0, 3), Phone.Substring(3, 4), Phone.Substring(7, 4));
           return output;

       }
    

    }// end of class
}//end of namespace

源码下载地址:

http://files.cnblogs.com/files/landv/WindowsFormContactList.zip

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2017-02-04 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档