日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > C# >内容正文

C#

C#中教你一步步实现一个电话本窗体程序

發布時間:2025/3/19 C# 24 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C#中教你一步步实现一个电话本窗体程序 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

場景

使用C#窗體程序實現一個電話本應用程序。

實現

新建窗體程序,PhoneBook

?

然后打開工具箱,拖拽一個ListView到窗體中

拖拽完成后點擊右上角三角符號,編輯選項--編輯列。

?

點擊添加,修改每列的Name屬性和顯示text

?

添加三列,分別為姓名、類型、號碼,適當調整每列的寬度。

?

然后將其視圖切換為Details然后就能顯示每列了。

?

拖拽完ListView后再在右邊拖拽一些label、TextBox、Button等,并設置有意義的Name屬性和Text顯示。

?

右鍵項目--添加-類,添加聯系人實體類

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;namespace PhoneBook {class PhoneBook{public PhoneBook(string name, string phoneType, string phoneNumber){this.Name = name;this.PhoneType = phoneType;this.PhoneNumber = phoneNumber;}private string name;public string Name{get { return name; }set { name = value; }}private string phoneType;public string PhoneType{get { return phoneType; }set { phoneType = value; }}private string phoneNumber;public string PhoneNumber{get { return phoneNumber; }set { phoneNumber = value; }}} }

聯系人加載

首先聲明一個全局類變量存儲聯系人。

?//聲明一個全局 類變量 電話本鍵值對 key為string,value為聯系人對象Dictionary<string,PhoneBook> phoneBooks;

?

然后在Form的加載完的方法中對ListView進行賦值

?private void MainForm_Load(object sender, EventArgs e){phoneBooks = new Dictionary<string, PhoneBook>();PhoneBook zhang = new PhoneBook("張三", "Nokia5300", "13810043231");PhoneBook li = new PhoneBook("李四", "MotoV3i", "13915441146");PhoneBook wang = new PhoneBook("王五", "SumSungD908", "13641259670");phoneBooks.Add(zhang.Name,zhang);phoneBooks.Add(li.Name,li);phoneBooks.Add(wang.Name,wang);FillList(phoneBooks);}

上面先封裝三個聯系人對象嗎,然后以聯系人的名字為key存進全局電話本對象。

?private void FillList(Dictionary<string, PhoneBook> phoneBooks){lvPhones.Items.Clear();foreach (PhoneBook phoneBook in phoneBooks.Values){ListViewItem item = new ListViewItem(phoneBook.Name);item.SubItems.AddRange(new string[] { phoneBook.PhoneType, phoneBook.PhoneNumber });lvPhones.Items.Add(item);}}

效果

?

實現添加效果

在添加按鈕的點擊事件中

?private void btnAdd_Click(object sender, EventArgs e){if (String.IsNullOrEmpty(txtName.Text) ||String.IsNullOrEmpty(txtPhoneNum.Text) ||String.IsNullOrEmpty(txtPhoneType.Text)){MessageBox.Show("電話信息不能為空");return;}PhoneBook phone = new PhoneBook(txtName.Text, txtPhoneType.Text, txtPhoneNum.Text);phoneBooks.Add(phone.Name,phone);FillList(phoneBooks);this.txtName.Text = "";this.txtPhoneNum.Text = "";this.txtPhoneType.Text = "";}

效果

?

實現刪除效果

? private void btnDel_Click(object sender, EventArgs e){if (this.lvPhones.SelectedItems.Count == 0){MessageBox.Show("沒有選擇刪除項。");return;}string key = this.lvPhones.SelectedItems[0].Text;phoneBooks.Remove(key);FillList(phoneBooks);this.txtName.Text = "";this.txtPhoneNum.Text = "";this.txtPhoneType.Text = "";}

效果

?

實現詳情效果

?private void btnDetail_Click(object sender, EventArgs e){if (this.lvPhones.SelectedItems.Count == 0){MessageBox.Show("沒有選擇。");return;}string key = this.lvPhones.SelectedItems[0].Text;this.txtName.Text = phoneBooks[key].Name;this.txtPhoneNum.Text = phoneBooks[key].PhoneNumber;this.txtPhoneType.Text = phoneBooks[key].PhoneType;FillList(phoneBooks);}

效果

?

實現統計效果

? private void btnTotal_Click(object sender, EventArgs e){string count = string.Format("總共有{0}個電話!", phoneBooks.Count.ToString());MessageBox.Show(count);}

效果

?

實現退出效果

?private void btnExit_Click(object sender, EventArgs e){this.Dispose();}

效果

?

源碼下載

https://download.csdn.net/download/badao_liumang_qizhi/11566183

?

?

?

?

總結

以上是生活随笔為你收集整理的C#中教你一步步实现一个电话本窗体程序的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。