4-2 ADO.NET-查询和检索数据7

简介:
u 实验步骤(5):
用鼠标双击所有 Button 控件,进入.cs文件编辑状态准备进行开发。代码加下:
//========== 执行主界面功能================
using  System;
using  System.Collections;
using  System.Collections.Generic;
using  System.ComponentModel;
using  System.Data;
using  System.Drawing;
using  System.Text;
using  System.Windows.Forms;
 
namespace  WindowsApplication1
{
    public partial class Form10 : Form
    {
        public Form10()
        {
            InitializeComponent();
        }
        DataBase mydatabase = new DataBase();
        /// <summary>
        ///  添加
        /// </summary>
        private void button1_Click(object sender, EventArgs e)
        {
            int i=mydatabase.ExecuteSQL("insert into student(sno,sname,class) values("+textBox1.Text.Trim()+",'"+ textBox2.Text.Trim() +"','"+ textBox3.Text.Trim() +"')");
            if (i > 1)
            {
                MessageBox.Show(" 成功插入" ," 信息" );
            }
        }
        ///   <summary>
        ///  自定义方法:填充combox控件之中的内容
        /// </summary>
        private void fillcombox()
        {
            ArrayList al = mydatabase.GetListArray("select sno from student", 0);
            foreach (int sno in al)
            {
                comboBox1.Items.Add(sno.ToString());
            }
            this.comboBox1.SelectedIndex = 0;
        }
        /// <summary>
        ///  表单初始化事件:加载fillcombox()方法,以填充combox控件之中的内容
        /// </summary>
        private void Form10_Load(object sender, EventArgs e)
        {
            fillcombox();
        }
    }
}

4-2          DataGridView控件 — 显示和操作数据

4-2节中我们主要学习并掌握了以下几个知识点,包括:
n DataSet 对象内表示的数据是数据库的部分或全部的断开式内存副本
n DataAdapter 对象用来填充数据集和用来更新数据集到数据库,这样方便了数据库和数据集之间的交互
n 类型化数据集对象是 DataSet 类的派生类的实例,这些类都基于 XML 结构
n DataTable 表示一个内存数据表,而 DataColumn 表示 DataTable 中列的结构
n DataView DataTable中存储的数据的表示层
n DataReader 对象提供只进、只读和连接式数据访问,并使用专用的数据连接
n DataReader 对象提供检索强类型化数据的方法
u
n 了解 DataGridView 控件常见的属性和方法
n 掌握 DataGridView 的数据绑定
n 掌握在 DataGridView 控件中插入、更新和删除数据
n 掌握定制 DataGridView 界面

4-3-1   DataGridView控件概述

1.为什么使用DataGridView

我们在实际项目研发中经常会遇到这样的问题:怎样高效的显示 DataSet 对象中的数据呢? DataSet 对象中有若干数据表 DataTable ,每个 DataTable 对象中包含若干表示数据记录的 DataRow 对象。这种典型的二维结构表信息显然通过电子表格的形式呈现出来,数据显示的效果是最好的。
在前面章节里,应用程序显示 DataSet 对象中的数据是通过在窗体里每次显示一条记录的方式,即每次显示一个 DataRow 对象内容。这时由若干个控件分别显示 DataRow 对象的各个字段,但每次只能显示一条记录信息。如图450所示:
4-50 显示单条记录的窗体图
但怎样才能把DataSet对象中某个数据表 DataTable 里的所有数据记录一并全部显示在一个窗体界面上呢?如图451所示:
4-71 显示全部记录的窗体图
这里就用到 DataGridView 控件,仅仅一个 DataGridView 控件就可以显示数据表 DataTable 里的全部数据记录。 DataGridView 控件的工作示意如图452所示:
4-52  DataGridView 控件的工作示意图
从图452中可以看出,数据集 DataSet 中的某个数据表可以整个显示在某个窗体界面上,非常方便用户查看。由此可以看出 DataGridView 控件的强大方面,该控件的特点主要表现为:
n 强大而灵活地显示数据
n 轻松定义控件外观
n Excel 表格一样方便
n 一行代码实现数据绑定
n 可视化操作

2.DataGridView控件的简介

DataGridView . NET  2.0中的一个新控件,是针对. NET  1. x 中功能较差的标准 DataGrid 控件设计的。有许多改进方面,包括: DataGridView 支持大量自定义和细致的格式设置、灵活的大小调整和选择、更好的性能以及更丰富的事件模型。
DataGridView 控件提供一种强大而灵活的以表格形式显示数据的方式。可以使用 DataGridView 控件来显示少量数据的只读视图,也可以对其进行缩放以显示特大数据集的可编辑视图。
可以用很多方式扩展 DataGridView 控件,以便将自定义行为内置在应用程序中。例如,可以采用编程方式指定自己的排序算法,以及创建自己的单元格类型。通过选择一些属性,可以轻松地自定义 DataGridView 控件的外观。可以将许多类型的数据存储区用作数据源,也可以在没有绑定数据源的情况下操作 DataGridView 控件。
在不使用 DataGridView 控件来显示数据情况下,一般使用多个可视组件来显示数据,过程示意如图453所示:
4-53 多个可视组件显示记录数据工作示意图
这样有很多不便利的方面,主要表现为:
n 没法同时对多个记录信息进行比较。
n 需要配置多个可视组件,工作复杂。
n 多个可视组件的数据绑定,操作编码工作量大。
n 界面不容易规划美观。
n 难以控制。
VS  . NET 开发平台中的 DataGridView 控件成为有效数据使用者。 DataGridView 控件是  Winform 中最通用、最强大和最灵活的数据控件。 DataGridView 控件的工作原理如图454所示:
4-54 DataGridView控件的工作原理示意图
从图454中可以看出: DataGridView 控件可以与数据集等数据源进行相互绑定。数据绑定是指将数据源的元素映射到图形界面组件,从而该组件可以自动使用这些数据。这个绑定过程可以在窗体设计阶段通过设置 DataGridView 控件的 DataSource DataMember 等属性完成,也可以在程序中对其绑定编码直至运行时完成绑定。进行数据绑定的 DataGridView 控件与数据源有相同的数据列。程序运行后,数据源中被填充了数据, DataGridView 控件就会立即显示数据源中的数据。此外, DataGridView 控件还支持编辑功能,当某数据记录需要修改时,可以在 DataGridView 控件中直接修改数据,数据源中的数据也会得到相应的修改。

3.DataGridView控件的使用

1 DataGridView 控件的属性
DataGridView 控件常用的属性请参见表428所示:
4-28  DataGridView 控件常用属性表
AllowUserToAddRows
获取或设置一个值,该值指示是否向用户显示添加行的选项。
AllowUserToDeleteRows
获取或设置一个值,该值指示是否允许用户从DataGridView中删除行。
AllowUserToOrderColumns
获取或设置一个值,该值指示是否允许通过手动对列重新定位。
AllowUserToResizeColumns
获取或设置一个值,该值指示用户是否可以调整列的大小。
AllowUserToResizeRows
获取或设置一个值,该值指示用户是否可以调整行的大小。
DataSource
获取或设置DataGridView所显示数据的数据源
Columns
获取一个包含控件中所有列的集合。
(未完待续)




本文转自 qianshao 51CTO博客,原文链接:http://blog.51cto.com/qianshao/216103,如需转载请自行联系原作者

目录
相关文章
|
7月前
|
网络协议 定位技术 网络安全
IPIP.NET-IP地理位置数据
IPIP.NET 是一家专注于 IP 地理位置数据的提供商,基于 BGP/ASN 数据与全球 800+ 网络监测点技术,提供高精度的 IPv4 和 IPv6 定位服务。其核心服务包括地理位置查询、详细地理信息和网络工具等,广泛应用于网络安全、广告营销、CDN 优化等领域。数据覆盖全球,支持多语言,每日更新确保实时性。IPIP.NET 提供 API 接口、离线数据库及多种语言 SDK,方便开发者集成使用。
1316 0
|
SQL XML 关系型数据库
入门指南:利用NHibernate简化.NET应用程序的数据访问
【10月更文挑战第13天】NHibernate是一个面向.NET的开源对象关系映射(ORM)工具,它提供了从数据库表到应用程序中的对象之间的映射。通过使用NHibernate,开发者可以专注于业务逻辑和领域模型的设计,而无需直接编写复杂的SQL语句来处理数据持久化问题。NHibernate支持多种数据库,并且具有高度的灵活性和可扩展性。
305 2
|
开发框架 .NET 数据库连接
闲话 Asp.Net Core 数据校验(三)EF Core 集成 FluentValidation 校验数据例子
闲话 Asp.Net Core 数据校验(三)EF Core 集成 FluentValidation 校验数据例子
216 1
|
开发框架 JSON 前端开发
利用查询条件对象,在Asp.net Web API中实现对业务数据的分页查询处理
利用查询条件对象,在Asp.net Web API中实现对业务数据的分页查询处理
|
开发框架 前端开发 算法
分享 .NET EF6 查询并返回树形结构数据的 2 个思路和具体实现方法
分享 .NET EF6 查询并返回树形结构数据的 2 个思路和具体实现方法
217 0
|
SQL Oracle 关系型数据库
.NET 开源快捷的数据库文档查询和生成工具
【8月更文挑战第1天】推荐几款.NET开源数据库文档工具:1. DBDocumentor,支持多类型数据库,快速生成详尽文档;2. SqlDoc,界面简洁,自定义内容与格式;3. DBInfo,强大查询功能,支持多种导出格式。这些工具有效提升文档管理效率与质量。
210 0
效率提升利器:一个在线的.NET源码查询网站
效率提升利器:一个在线的.NET源码查询网站
167 0
|
存储 测试技术 计算机视觉
高维数据惩罚回归方法:主成分回归PCR、岭回归、lasso、弹性网络elastic net分析基因数据
高维数据惩罚回归方法:主成分回归PCR、岭回归、lasso、弹性网络elastic net分析基因数据
|
11月前
|
监控 前端开发 API
一款基于 .NET MVC 框架开发、功能全面的MES系统
一款基于 .NET MVC 框架开发、功能全面的MES系统
334 5