listView添加 修改 删除 保存数据到数据库操作
引爆你的博客,程序开发,源代码下载,.net,数据库,Access,SqlServer,Google博客优化,费空间免费域名
界面设计样式:
界面运行时样式:
GroupBox1中的是listView1,GroupBox2中的是listView2
具体操作代码如下:
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Data.OleDb;namespace Porject_test_1{ public partial class Form4 : Form { public Form4() { InitializeComponent(); } private OleDbConnection Con() { string ConString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Kword.mdb"; OleDbConnection Conn = new OleDbConnection(ConString); Conn.Open(); return Conn; } private void Form4_Load(object sender, EventArgs e) { OleDbConnection conn = Con(); OleDbCommand com = new OleDbCommand(); com.Connection = conn; com.CommandText = @"select distinct id from Kword"; OleDbDataReader oleRd = com.ExecuteReader(); while (oleRd.Read()) { listView1.Items.Add(oleRd[0].ToString()); } } //点击listView控件中的元素响应 private void listView1_ItemActivate(object sender, EventArgs e) { listView2.Items.Clear(); string i = listView1.SelectedItems[0].SubItems[0].Text; OleDbConnection Conn = Con(); string query = @"select * from Kword where id=@i"; OleDbCommand com = new OleDbCommand(query, Conn); com.Parameters.Add("@i", OleDbType.Variant, 10).Value = i; OleDbDataReader DR = com.ExecuteReader(); while (DR.Read()) { ListViewItem li = new ListViewItem(); li.SubItems.Clear(); li.SubItems[0].Text = DR[0].ToString(); li.SubItems.Add(DR[1].ToString()); listView2.Items.Add(li); } } //添加组按钮操作 private void button1_Click(object sender, EventArgs e) { AddGroup frm = new AddGroup(); frm.ShowDialog(); int i; for (i = 0; i < listView1.Items.Count; i++) { if (frm.GName == listView1.Items[i].Text) break; } if (i < listView1.Items.Count) MessageBox.Show("输入的组已有,请重新输入"); else listView1.Items.Add(frm.GName); } //删除组按钮操作 private void button2_Click(object sender, EventArgs e) { if (listView1.SelectedItems.Count != 0) { DialogResult dlgResult; dlgResult = MessageBox.Show("确定要删除该组?", "提示", MessageBoxButtons.YesNo, MessageBoxIcon.Asterisk); if (dlgResult == DialogResult.Yes) { OleDbConnection conn = Con(); string query = @"delete from Kword where ID=@GN"; OleDbCommand com = new OleDbCommand(); com.Connection = conn; com.CommandText = query; com.Parameters.Add("@GN", OleDbType.Variant, 10).Value = listView1.SelectedItems[0].Text; com.ExecuteNonQuery(); listView1.SelectedItems[0].Remove(); MessageBox.Show("删除成功", "提示", MessageBoxButtons.OK, MessageBoxIcon.Asterisk); //MessageBox.Show(listView1.SelectedItems[0].Text); } } else MessageBox.Show("请先选择要删除的组名!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Exclamation); } //添加按钮操作 private void button3_Click(object sender, EventArgs e) { if (listView1.SelectedItems.Count > 0) { AddItem frm = new AddItem(); frm.ShowDialog(); if (frm.IName != null) { ListViewItem It = new ListViewItem(); It.SubItems[0].Text = listView1.SelectedItems[0].Text; It.SubItems.Add(frm.IName); listView2.Items.Add(It); } } } //删除按钮操作 private void button4_Click(object sender, EventArgs e) { int count = listView2.SelectedItems.Count; for (int i = 0; i < count; count--) { listView2.SelectedItems[0].Remove(); } } //保存按钮操作 private void button5_Click(object sender, EventArgs e) { if (listView1.SelectedItems.Count != 0) { MessageBox.Show(listView2.Items[0].Text); MessageBox.Show(listView2.Items[1].SubItems[1].Text); OleDbConnection conn = Con(); string delString = @"delete from Kword where ID=@IdName"; string inString = @"insert into Kword (ID,Keyword) values (@idvalue,@keyword)"; OleDbCommand com = new OleDbCommand(); com.Connection = conn; com.CommandText = delString; com.Parameters.Add("@IdName", OleDbType.Variant, 10).Value = listView1.SelectedItems[0].Text; com.ExecuteNonQuery(); com.CommandText = inString; com.Prepare(); foreach (ListViewItem li in listView2.Items) { com.Parameters.Clear(); com.Parameters.Add("@idvalue", OleDbType.Variant, 10).Value = li.Text; com.Parameters.Add("@keyword", OleDbType.Variant, 50).Value = li.SubItems[1].Text; com.ExecuteNonQuery(); } } } //修改按钮操作 private void button6_Click(object sender, EventArgs e) { if (listView2.SelectedItems.Count == 1) { AddItem frm = new AddItem(); frm.ShowDialog(); if (frm.IName != null) { listView2.SelectedItems[0].SubItems[1].Text = frm.IName; } } else MessageBox.Show("请先选择要修改的某一行!", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error); } }}
0 评论:
发表评论