




已阅读5页,还剩2页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
datagridview绑定数据源的几种常见方式datagridview绑定数据源的几种常见方式/开始以前,先认识一下WinForm控件数据绑定的两种形式,简单数据绑定和复杂数据绑定。/1)简单数据绑定/using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStringsconnStr.ToString()/ SqlDataAdapter sda = new SqlDataAdapter(Select * From T_Class Where F_Type=Product order by F_RootID,F_Orders, conn);/ DataSet Ds = new DataSet();/ sda.Fill(Ds, T_Class);/ /使用DataSet绑定时,必须同时指明DateMember/ /this.dataGridView1.DataSource = Ds;/ /this.dataGridView1.DataMember = T_Class;/ /也可以直接用DataTable来绑定/ this.dataGridView1.DataSource = Ds.TablesT_Class;/简单的数据绑定是将用户控件的某一个属性绑定至某一个类型实例上的某一属性。采用如下形式进行绑定:引用控件.DataBindings.Add(控件属性, 实例对象, 属性名, true);/2)复杂数据绑定/复杂的数据绑定是将一个以列表为基础的用户控件(例如:ComboBox、ListBox、ErrorProvider、DataGridView等控件)绑定至一个数据对象的列表。/基本上,Windows Forms的复杂数据绑定允许绑定至支持IList接口的数据列表。此外,如果想通过一个BindingSource组件进行绑定,还可以绑定至一个支持IEnumerable接口的数据列表。/对于复杂数据绑定,常用的数据源类型有(代码以DataGridView作为示例控件):using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Collections;namespace DataGridViewBindingDatapublic partial class Form1 : Formpublic Form1()InitializeComponent();private void button1_Click(object sender, EventArgs e)/this.dataGridView1.DataSource = DataBindingByList1();/this.dataGridView1.DataSource = DataBindingByList2();/this.dataGridView1.DataSource = DataBindingByDataTable();this.dataGridView1.DataSource = DataBindingByBindingSource();/ / IList接口(包括一维数组,ArrayList等)/ / private ArrayList DataBindingByList1()ArrayList Al = new ArrayList();Al.Add(new PersonInfo(a,-1);Al.Add(new PersonInfo(b,-2);Al.Add(new PersonInfo(c,-3);return Al;/ / IList接口(包括一维数组,ArrayList等)/ / private ArrayList DataBindingByList2()ArrayList list = new ArrayList();for (int i = 0; i 10; i+)list.Add(new DictionaryEntry(i.ToString(),i.ToString()+_List);return list;/ / IListSource接口(DataTable、DataSet等)/ / private DataTable DataBindingByDataTable()DataTable dt = new DataTable();DataColumn dc1 = new DataColumn(Name);DataColumn dc2 = new DataColumn(Value);dt.Columns.Add(dc1);dt.Columns.Add(dc2);for (int i = 1; i = 10; i+)DataRow dr = dt.NewRow();dr0 = i;dr1 = i.ToString() + _DataTable;dt.Rows.Add(dr);return dt;/ / IBindingListView接口(如BindingSource类)/ / private BindingSource DataBindingByBindingSource()Dictionary dic = new Dictionary();for (int i = 0; i 10; i+)dic.Add(i.ToString(),i.ToString()+_Dictionary);return new BindingSource(dic,null);/上面代码中BindingSource的Datasource是一个结构类型DictionaryEntry,同样的DictionaryEntry并不能直接赋值给Combobox的DataSource,但通过BindingSource仍然可以间接实现。/ 这是因为:/BindingSource可以作为一个强类型的数据源。其数据源的类型通过以下机制之一固定:/ 使用 Add 方法可将某项添加到 BindingSource 组件中。/
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 加法减法面试题及答案
- 信访局考试试题及答案
- 2025年广元市消防员招录考试笔试试题(含答案)
- 2025年广安市岳池县农业技术助理岗招聘考试笔试试题(含答案)
- 栓绳安全知识培训内容课件
- 2025年度“全国安全生产月”《安全知识》考试题库(含答案)
- 护理质量试题及答案
- 应急管理知识练习题(附答案)
- 急救知识模拟试题(附答案)
- 2025年医院感染预防措施卫生、防护、隔离、抗菌等知识考试题库及参考答案(精练)
- 2025年调度持证上岗证考试题库
- 小区物业薪酬制度方案(3篇)
- 2025年计算机一级考试题库操作题及答案
- 电信运营商应急预案
- 高血压防治指南
- 采购管理办法分类
- 2025反洗钱知识试题题库及参考答案
- 百级无尘室管理办法
- 糖尿病专科护士培训大纲
- 泪道阻塞的护理教学查房
- 铁路四电工程课件
评论
0/150
提交评论