实现Windows程序的数据的绑定
1.创建DataSet对象
语法:
DataSet 数据集对象 =new DataSet("数据集的名称字符串");
语法中的参数是数据集的名称字符串,可以有,也可以没有。如果没有写参数,则创建的数据及名称为NewDataSet
2.认识DataAdapter对象
.NET数据提供程序及其DataApater类
.NET数据提供程序 数据适配器
SQL数据提供程序System.Data.SqlClient命名空间 SqlDataApater
OLE DB数据提供程序 System.Data.OleDb命名空间 OleDbDataApater
ODBC数据提供程序System.Data.Odbc命名空间 OdbcDataApater
Oracle数据提供程序System.Data.Oracle命名空间 OracleDataApater
数据适配器是从数据库读取数据,是通过Command对象命令实现的,他是数据适配器的一个属性SelectCommand。
把数据放在DataSet,需要使用DataApater的Fill()方法。反过来,要把数据保存到数据库
DataAdapter对象的主要属性和方法
属性 说明
SelectCommand 从数据库检索数据的Command对象
方法 说明
Fill() 向DataSet中的表填充数据
Update() 将DataSet中的数据提交到数据库
3.填充数据集
使用DataAdapter填充的步骤
1.创建数据库连接对象
2.创建从数据库中查询用的SQL语句
3.利用上面创建的SQL语句和Command对象创建DataAdApter数据库
创建数据库语法如下:
语法:
SqlDataAdapter 对象名 =new SqlDataAdapter(查询用的Sql语句,数据库连接);
或 SqlDataAdapter adapter =new SqlDataAdapter();
SqlCommand command=new SqlComand (查询用的SQL语句,数据库连接);
adapter.SelectCommand=command;
4.调用DataAdapter对象Fill()方法填充数据集语法如下:
DataAdapter 对象.Fill(数据集对象,"数据表名称字符串");
在第四步中,Fil()方法接收一个数据表名称的字符串参数。如果这个数据库中原来没有这个数据表,调用Fill()方法后会创建一个数据表。
如果这个数据集中原来有这个数据表,就会把现在查出来的数据继续添加到那个表中。
5.数据绑定
ComboBox数据绑定
ComboBox的主要属性
属性 说明
DataSource 获取或设置数据源
DispayMember 获取或设置要为此ListControl显示的属性
ValueMenber 获取或设置一个属性,该属性将用作ListControl中项的实际值
在ListBox,ControlBox控件上都有ValueMember属性和DisplayMember属性。这些控件一般包括两部分的吧。一部分是可见的,如DisplayMember属性;
另一部分是不可见得如,ValueMember属性。通过ValueMember属性和DisplayMember属性是配对使用的。DisplayMember属性是用来绑定现实的数据的。
6.DataGirdView控件
认识DataGirdView控件
DataGirdView控件的主要属性
属性 说明
AutoGenerateClumns 设置DataGirddView是否自动创建列
Columns 包含的列的集合
DataSource DataGirdView数据源
ReadOnly 是否可以编译单元格
通过Columns属性,还可以设置DataGirdView控件中每一列属性,包括列的宽度,样式,列头的文字,是否为只读,是否为冻结,对应的数据表,的哪一列等
DataGirdView控件各列的主要属性
属性 说明
ClomunsType 列的属性
DataPropertyName 绑定列的名称
HerderText 列表题文本
Visble 指定列是否可见
Frozen 指定水平滚动DataGirdView时,列是否移动
ReadOnly 指定单元格是否为只读
7.保存对属性的修改
1.使用SqlCommandBuilder对象生成个更新用的相关命令
语法:
SqlCommandBuilder builder=new SqlCommandBuilder(已创建的DataAadapter对象);
在创建SqlCommandBuilder 对象时,需要将实例化的DataAdapter作为参数传递给SqlCommandBuilder类的构构造函数。利用SqlCommandBuilder类构造函数。
利用SqlCommandBuilder类的构造函数。利用SqlCommandBuilder对象能够自动执行InsertCommand,UpdataCommmand和,DelectCommand等命令对象
2.调用DataAdapter对象的Update()方法
语法:
DataAdapter 对象。Uptdate(数据集对象,"数据变名称字符串");
Update 有两个参数,分别是需要将更新的数据写入数据库的DataSet和数据库中更新的表名称。
实现Windows程序的数据的绑定的更多相关文章
- 重新想象 Windows 8 Store Apps (54) - 绑定: 增量方式加载数据
[源码下载] 重新想象 Windows 8 Store Apps (54) - 绑定: 增量方式加载数据 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 绑定 通过实 ...
- 如何在原生微信小程序中实现数据双向绑定
官网:https://qiu8310.github.io/minapp/ 作者:Mora 在原生小程序开发中,数据流是单向的,无法双向绑定,但是要实现双向绑定的功能还是蛮简单的! 下文要讲的是小程序框 ...
- 前端笔记之微信小程序(二){{}}插值和MVVM模式&数据双向绑定&指令&API
一.双花括号{{}}插值和MVVM模式 1.1 体会{{}}插值 index.wxml的标签不是html的那些标签,这里的view就是div. {{}}这样的插值写法,叫做mustache语法.mus ...
- Windows程序----初识Windows程序
先来看一些励志名言来激励一下自己吧! 励志名言:每一发奋发奋的背后,必有加倍的赏赐 1.有无目标是成功者与平庸者的根本差别. 2.成功不是将来才有的,而是从决定去做的那一刻起,持续累积而成. 3.当 ...
- 重新想象 Windows 8 Store Apps (52) - 绑定: 与 Element Model Indexer Style RelativeSource 绑定, 以及绑定中的数据转换
[源码下载] 重新想象 Windows 8 Store Apps (52) - 绑定: 与 Element Model Indexer Style RelativeSource 绑定, 以及绑定中的数 ...
- 重新想象 Windows 8 Store Apps (53) - 绑定: 与 ObservableCollection CollectionViewSource VirtualizedFilesVector VirtualizedItemsVector 绑定
[源码下载] 重新想象 Windows 8 Store Apps (53) - 绑定: 与 ObservableCollection CollectionViewSource VirtualizedF ...
- 重新想象 Windows 8 Store Apps (55) - 绑定: MVVM 模式
[源码下载] 重新想象 Windows 8 Store Apps (55) - 绑定: MVVM 模式 作者:webabcd 介绍重新想象 Windows 8 Store Apps 之 绑定 通过 M ...
- 窗体==>>初始Windows程序
初识Windows程序 01.创建Windows程序(VS) 01.打开Visual Studio开发工具 02.选择"文件"→"新建"→"项目&qu ...
- windows程序防狼术入门
当初由于一些原因以及兴趣,学习了一段时间软件逆向,对于软件加密解密有了点粗略的了解.而后看到某些同学辛辛苦苦的搞出个软件,自己费心费力去加密,但搞出来后往往能被秒破,实不忍心.今天大概总结下一些基本的 ...
随机推荐
- Web.config中设置启用webservice远程调试访问
在.NET 中已经默认将webservice的远程调试功能关闭,有的时候我们需要远程调试程序的时候,就需要打开此功能我们只需在webservice的项目的中添web.config的<system ...
- boost asio allocation
allocation演示了自定义异步操作的内存分配策略,因为asio在执行异步IO操作时会使用系统函数来动态分配内存,使用完后便立即释放掉:在IO操作密集的应用中,这种内存动态分配策略会较大地影响程序 ...
- jquery回调函数的一个案例
1.引言 今天在学习<jQuery基础教程>在学习编写插件的时候,书中说利用回调函数来当参数,会极大的提高程序的灵活性.对回调函数很陌生.研究了一下给的示例程序.感觉对回调函数有了基本的了 ...
- windows下安装和配置nginx
下载nginx 到官网下载window版的nginx http://nginx.org/ 配置环境变量 解压到本地的某个路径下, 打开cmd窗口,cd到nginx的目录下 这里要注意cd的时候要加/d ...
- 戏说java多线程之CyclicBarrier(循环栅栏)的CyclicBarrier(int parties)构造方法
CyclicBarrier是JDK 1.5 concurrent包出现的一个用于解决多条线程阻塞,当达到一定条件时一起放行的一个类.我们先来看这样一个简单的需求. 现在我有一个写入数据的类,继承Run ...
- Bzoj4817:[SDOI2017]树点涂色
题面 Bzoj Sol 做个转化 最开始都是虚边 操作\(1\)就是\(LCT\)里的\(Access\)操作 求的就是路径上虚边的个数+1 然后就好办了 用树链剖分+线段树来维护每个点到根虚边的个数 ...
- MPTCP iperf 发包方式
之前用的发包方式是发送大文件,用NC监测. 今天改了另外一种发包方式iperf,简单记录下. iperf发包,具体方法: 1.在终端中运行拓扑脚本: 运行py脚本:sudo python topy.p ...
- angular何时触发脏检查机制
ng只有在指定事件触发后,才进入$digest cycle: DOM事件,譬如用户输入文本,点击按钮等.(ng-click) XHR响应事件 ($http) 浏览器Location变更事件 ($loc ...
- 【learning】一种奇妙的网络流建模方式
吐槽 好吧这个是真的很妙qwq用来解方程组的网络流嗯不能更清真 正题 首先是大概描述 当一个方程组中所有的方程相加之后可以把所有的变量都消掉(也就是所有变量都出现一正一负可以抵消掉),我们会发现这个其 ...
- AndroidStudio Frameworks detected: Android framework is detected in the project Configure
出现这个问题应该是文件没有用正确的方式打开. 遇到这种情况,就要去检查下载的这个包的结构. 我的这个文件明显真正的是下面这个文件夹,如果把整个当做一个android文件打开会导致文件结 ...