将listBox中信息显示在dataGridview中,操作datagridview后删除listBox信息和SQL数据库信息 续(浅谈listBox..)
2013-08-01 20:27
274 查看
应用场景
对datagridview控件使用了解,以及操作datagridview选中的信息删除,并且有二次确认后才删除用户信息。相应的删除listbox中用户信息,下面一起看看需要哪些准备?开发环境
开发工具:Microsoft Visual Studio 旗舰版、SQL Server 2008.开发环境:.NET Framework 4 Client Profile.
实现步骤
1、搭建MVC框架、建立PERSON_T表格;首先,了解什么是MVC框架,MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写,一种软件设计典范,用于组织代码用一种业务逻辑和数据显示分离的方法,这个方法的假设前提是如果业务逻辑被聚集到一个部件里面,而且界面和用户围绕数据的交互能被改进和个性化定制而不需要重新编写业务逻辑MVC被独特的发展起来用于映射传统的输入、处理和输出功能在一个逻辑的图形化用户界面的结构中。
我在VS项目中建立一个目录如下图:
然后,在SQL2008中FMSDB数据库中建立PERSON_T表;具体代码见下方:
USE [FMSDB] GO /****** Object: Table [dbo].[PERSON_T] Script Date: 07/30/2013 15:47:33 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO CREATE TABLE [dbo].[PERSON_T]( [NAME] [nvarchar](50) NULL, [AGE] [int] NULL ) ON [PRIMARY] GO
2、创建DataGridView后配置
DataGridView控件具体配置
AllowUserToAddRows改为false
AutoSizeColumnsMode改为Fill
ColumnHeadersVisible
Dock改为Bottom将datagridview放在winfrom最底端
MultiSelect 改为false 后用户只选中一行数据
RowHeadersVisible改为false第一列将会被隐藏
SelectionMode改为FullRowSelect 选中一整行数据
contextMenuStrip改为contextMenuStrip1 绑定contextStrip
3、给添加信息到datagridview中,通过循环person对象给dataGridView1赋值,具体代码见下
private void btnAddGridview_Click(object sender, EventArgs e) { if (dataGridView1.Rows.Count >=0) { dataGridView1.Rows.Clear(); for (int i = 0; i < listBoxFor.Items.Count; i++) { Person p = (Person)listBoxFor.Items[i]; dataGridView1.Rows.Add(); dataGridView1.Rows[i].Cells["Column1"].Value = p.ID; dataGridView1.Rows[i].Cells["Column2"].Value = p.Name; dataGridView1.Rows[i].Cells["Column3"].Value = p.Age; dataGridView1.Rows[i].Cells["Column4"].Value = p.Position; dataGridView1.Rows[i].Cells["Column5"].Value = p.HomeAddresss; dataGridView1.Rows[i].Cells["Column6"].Value = p.IdentifyNumber; } } } 4、给datagridview中添加右键删除选中一行用户信息操作,具体代码见下
private void ToolStripMenuItem_Click(object sender, EventArgs e) { string name; if (dataGridView1.SelectedRows.Count>0) { DialogResult comfirm = MessageBox.Show("确定删除信息...", "确定删除", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation); if (comfirm == DialogResult.Yes) { name = dataGridView1.CurrentRow.Cells["Column2"].Value.ToString(); bool result = Control.DeleteUser(name); if (result == true) { MessageBox.Show("成功删除用户选中信息"); } else { MessageBox.Show("删除用户失败!"); } RefreshUI(name); } } } 5、作删除操作时,将listbox与datagridview中删除信息后,进行刷新操作,具体代码见下
private void RefreshUI(string name) { for (int i = 0; i <listBoxFor.Items.Count; i++) { Person p = (Person) listBoxFor.Items[i]; if (p.Name == name) { listBoxFor.Items.RemoveAt(i); break; } } btnAddGridview_Click(null, null); }
运行后的效果图如下
右键后图片如下
按确定后
按是按钮之后
技术点
1、取出listBox中封装的对象的属性,给datagridview赋值。2、通过获取选中datagridview中数据,获取datagridview中name值,通过用户名删除用户信息。
3、删除用户信息时,进行界面刷新操作,新建一个刷新界面的方法。
感想
通过此实例来加强面向对象的编程,熟练运用面向对象的方法,将数据倒来倒去,最终获取想要的信息。源码下载
.csharpcode, .csharpcode pre
{
font-size: small;
color: black;
font-family: consolas, "Courier New", courier, monospace;
background-color: #ffffff;
/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt
{
background-color: #f4f4f4;
width: 100%;
margin: 0em;
}
.csharpcode .lnum { color: #606060; }
相关文章推荐
- 利用顺序表的操作,实现以下函数: 1)从顺序表中删除具有最小值的元素并由函数返回被删除元素的值。空出的位置由最后一个元素填补,若顺序表为空则显示出错信息并退出运行。
- GIS地图开发之地图交互操作(增加、删除要素)与要素信息显示
- java使用Jsch实现远程操作linux服务器进行文件上传、下载,删除和显示目录信息
- 用委托在listbox中异步显示信息,解决线程间操作无效,从不是创建控件的线程访问它
- SQLite数据库储存图片信息,GridView显示,基本实现添加、删除图标操作 ... ...
- 浅谈ListBox控件,将对象封装在listBox中,在ListBox中显示对象中某个属性,在ListBox中移除和移动信息
- GIS地图开发之地图交互操作(增加、删除要素)与要素信息显示
- DataGridView显示oracle数据库中信息
- C#--操作DataGridView控件详解(数据显示,更改行高行宽,交换行,自动添加行号)
- struts2使用拦截器完成登陆显示用户信息操作
- 添加删除、更新按钮的提示确认信息,以及DATAGRID的添加、插入、更新、删除操作。
- 表格的一些原生js操作(隔行变色,高亮显示,添加删除,搜索)
- windows的磁盘操作之三——获取和删除磁盘分区信息
- 实现简单通讯录操作。 1、定义联系人类AddressPerson。实例变量:姓名、性别、电话号码、住址、分组名称。方法:自定义初始化方法(姓名、电话号码)、显示联系人信息 2、在main.m中定义可变
- 实验D_JSP中JAXP操作XML显示查询添加删除
- 案例--编写一个Servlet,显示已有用户信息,可添加/修改、删除帐务帐号信息,并重新显示新页面
- 如何记住ExtJs grid 列表的 隐藏和显示列,针对客户的操作习惯,客户所查看的列表信息也不同
- 删除ListBox某项后需要进行的操作
- windows的磁盘操作之三――获取和删除磁盘分区信息
- DataGridView连接Sql数据库 功能 查询 添加 删除 修改