目录
英雄信息类
因为要在两个窗体里面调用字典,所以要写一个字典的静态变量
添加功能
查询功能
删除功能
英雄信息类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace WindowsFormsApplication1
{
class hero
{
public int Id;
public string Name;
public int Money;
public string Type;
public hero(int id, string name, int money, string type)
{
Id = id;
Name = name;
Money = money;
Type = type;
}}
}
因为要在两个窗体里面调用字典,所以要写一个字典的静态变量
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;namespace WindowsFormsApplication1
{
class Class1
{
public static Dictionary<string, hero> dic = new Dictionary<string, hero>();
}
}
添加功能
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;namespace WindowsFormsApplication1
{
public partial class Form2 : Form
{
public Form2()
{
InitializeComponent();
}private void button1_Click(object sender, EventArgs e)
{
Class1.dic[textBox2.Text] = new hero(int.Parse(textBox1.Text), textBox2.Text, int.Parse(textBox3.Text), textBox4.Text);
}
}
}
查询功能
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}private void button2_Click(object sender, EventArgs e)
{
Form2 f = new Form2();
f.ShowDialog();
NewMethod();}
private void NewMethod()
{
for (int i = 0; i < Class1.dic.Count; i++)
{
string temp = Class1.dic.Keys.ElementAt(i);
DataGridViewRow row = new DataGridViewRow();
row.CreateCells(dataGridView1);
row.Cells[0].Value = Class1.dic[temp].Id.ToString();
row.Cells[1].Value = Class1.dic[temp].Name.ToString();
row.Cells[2].Value = Class1.dic[temp].Money.ToString();
row.Cells[3].Value = Class1.dic[temp].Type.ToString();
dataGridView1.Rows.Add(row);
}
}private void Form1_Load(object sender, EventArgs e)
{}
private void button1_Click(object sender, EventArgs e)
{
dataGridView1.Rows.Clear();
if (textBox1.Text=="")
{
NewMethod();
}
else
{
string temp = textBox1.Text;
for (int i = 0; i < Class1.dic.Count; i++)
{
string t = Class1.dic.Keys.ElementAt(i);
if (temp==t)
{
DataGridViewRow row = new DataGridViewRow();
row.CreateCells(dataGridView1);
row.Cells[0].Value = Class1.dic[temp].Id.ToString();
row.Cells[1].Value = Class1.dic[temp].Name.ToString();
row.Cells[2].Value = Class1.dic[temp].Money.ToString();
row.Cells[3].Value = Class1.dic[temp].Type.ToString();
dataGridView1.Rows.Add(row);
}
}}
}private void 删除ToolStripMenuItem_Click(object sender, EventArgs e)
{
string temp = dataGridView1.CurrentRow.Cells[1].Value.ToString();
Class1.dic.Remove(temp);
dataGridView1.Rows.Clear();
NewMethod();}
}
}
删除功能
删掉字典中对应的键,然后重新调用填充所有的方法即可
private void 删除ToolStripMenuItem_Click(object sender, EventArgs e)
{
string temp = dataGridView1.CurrentRow.Cells[1].Value.ToString();
Class1.dic.Remove(temp);
dataGridView1.Rows.Clear();
NewMethod();}