C# 高级类型 Dictionary(学习笔记4)
key-value方式,key不可以重复,value可以。

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;
}
}
}
}
本文来自博客园,作者:huiy_小溪,转载请注明原文链接:https://www.cnblogs.com/huiy/p/19224542

浙公网安备 33010602011771号