当前位置: 首页 > news >正文

C# 高级类型 Dictionary(学习笔记4)

key-value方式,key不可以重复,value可以。

img

namespace WindowsFormsApp1
{public partial class Form1 : Form{public Form1(){InitializeComponent();}private static Dictionary<int, string> dictionary = new Dictionary<int, string>{// 添加{ 1, "张三" },{ 2, "李四" },{ 3, "李四" },{ 4, "李四" },{ 5, "李四" },{ 6, "李四" }};private static int DICT_KEY = dictionary.Count;private readonly string id = "id";private readonly string names = "names";/// <summary>/// 添加数据 /// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void BtnAddData_Click(object sender, EventArgs e){listView1.BeginUpdate();listView1.View = View.Details;listView1.Items.Clear();// 清除旧数据listView1.Columns.Clear(); //清除列listView1.Columns.Add(id, id, 100);listView1.Columns.Add(names, names, 100);foreach (var item in dictionary){listView1.Items.Add(item.Key.ToString()).SubItems.Add(item.Value);}listView1.EndUpdate();}/// <summary>/// 遍历KEY/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void BtnAllKeyes_Click(object sender, EventArgs e){listView1.BeginUpdate();listView1.View = View.Details;listView1.Items.Clear();// 清除旧数据listView1.Columns.Clear(); //清除列listView1.Columns.Add(id, id, 100);foreach (var item in dictionary){listView1.Items.Add(item.Key.ToString());}listView1.EndUpdate();}/// <summary>/// 遍历数据/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void BtnAllValues_Click(object sender, EventArgs e){listView1.BeginUpdate();listView1.View = View.Details;listView1.Items.Clear();// 清除旧数据listView1.Columns.Clear(); //清除列listView1.Columns.Add(names, names, 100);foreach (var item in dictionary){listView1.Items.Add(item.Value);}listView1.EndUpdate();}/// <summary>///  遍历字典/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void BtnAllDict_Click(object sender, EventArgs e){listView1.BeginUpdate();listView1.View = View.Details;listView1.Items.Clear();// 清除旧数据listView1.Columns.Clear(); //清除列listView1.Columns.Add(id, id, 100);listView1.Columns.Add(names, names, 100);foreach (var item in dictionary){listView1.Items.Add(item.Key.ToString()).SubItems.Add(item.Value);}listView1.EndUpdate();}/// <summary>/// 删除数据/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void BtnDelData_Click(object sender, EventArgs e){if (listView1.SelectedItems.Count > 0 && listView1.Columns.ContainsKey(id)){int intID = Convert.ToInt32(listView1.SelectedItems[0].Text);dictionary.Remove(intID);listView1.Items.RemoveAt(listView1.SelectedItems[0].Index);}}/// <summary>/// 插入数据/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void BtnInsertData_Click(object sender, EventArgs e){dictionary.Add(++DICT_KEY, "Test" + Convert.ToString(DICT_KEY));if (listView1.Columns.Count > 1){listView1.Items.Add(DICT_KEY.ToString()).SubItems.Add(dictionary[DICT_KEY]);}else if (listView1.Columns.ContainsKey(id)){listView1.Items.Add(DICT_KEY.ToString());}else if (listView1.Columns.ContainsKey(names)){listView1.Items.Add(dictionary[DICT_KEY]);}}/// <summary>/// 修改数据/// </summary>/// <param name="sender"></param>/// <param name="e"></param>private void btnEditData_Click(object sender, EventArgs e){if (listView1.SelectedItems.Count > 0 && listView1.Columns.ContainsKey(names) && listView1.Columns.Count > 1){listView1.SelectedItems[0].SubItems[1].Text = listView1.SelectedItems[0].SubItems[1].Text + "1";int key = Convert.ToInt32(listView1.SelectedItems[0].SubItems[0].Text);dictionary[key] = listView1.SelectedItems[0].SubItems[1].Text;}}}
}
http://www.rkmt.cn/news/51328.html

相关文章:

  • Metasploit Framework 6.4.99 (macOS, Linux, Windows) - 开源渗透测试框架
  • 小程序获取OCR识别结果,示例代码
  • Acunetix v25.11 发布,新增功能简介
  • MySQL数据过滤与计算字段实战技术指南
  • 实用指南:【第五章:计算机视觉-项目实战之推荐/广告系统】1.推荐系统基础与召回算法-(6)召回算法之u2i: FM、deepFM、召回双塔原理精讲与实战
  • 实用指南:On-Page SEO完全指南:从关键词策略到内容优化
  • Java位运算符概览
  • 自动化测大样例
  • 2025年当下行业内知名的旧房翻新企业排名与推荐
  • 现今国内口碑好的旧房翻新企业排行
  • 20232422 龙浩然 2025-2026-1 《网络与系统攻防技术》实验五实验报告
  • [AGC030F]Permutation and Minimum
  • 2025年安徽伸缩门公司哪家权威:十大品牌综合评测
  • Spring 中的 @Configuration 注解
  • C# 封装、继承、抽象、接口
  • 智能床垫品牌全面选品指南:2025年11月最新TOP5榜单深度解析
  • 基于Qt实现的窗口半透明流动背景
  • 2025年11月冷媒剂厂家评测榜:从资质到应用全场景解析
  • 分布式计算通信原语的抽象模型
  • 2025/11/16
  • 数据结构——二十四、图(王道408) - 实践
  • C# Avalonia 18- ControlTemplates - ColorPickerUserControlTest
  • Spring AI Alibaba 项目源码学习(九)-其他继承BaseAgent
  • Linux进程状态 - 教程
  • mybatis_generate_demo
  • 换歌换歌
  • GaN 器件第三象限导通特性
  • Why did Hitler become a greater Napoleon?
  • Qt编写28181推流分发服务/统计访问数量/无人观看超时关闭/等待重新点播/复用点播
  • React Native创建AndroidIOS流程完整指南