这有好长时间都没与大家分享我在C#中的心得了,接下来我还是会跟大家讲解我对WinForm中控件的认识。也许大家肯定会觉得又做绑定,是当然做绑定因为对于微软而言他们对控件都是基于数据操作,好了你们接下来分享我在WinForm中的心得,今天我要讲解的一个新类DataView,此类是使用做一个过滤器使用。
接下来我们看看今天的程序
今天要使用的控件有2个。第1个ComboBox,第2个DataGrid大家可以使用DataGridView GridView
1
using System;
2
using System.Drawing;
3
using System.Collections;
4
using System.ComponentModel;
5
using System.Windows.Forms;
6
using System.Data;//导入包一
7
using System.Data.SqlClient;// 导入包二
8
public class Form2 : System.Windows.Forms.Form
9
{
10
private System.Windows.Forms.ComboBox cbValue;
11
private System.Windows.Forms.DataGrid dgData;
12
private SqlDataAdapter _ad = null;
13
private DataSet _ds = null;
14
private void Form2_Load(object sender, System.EventArgs e)
15
{
16
string _strConn = "SERVER=.; UID=SA; PWD=SA; DATABASE=TEST";//连接数据库字符串
17
string _sql = "SELECT * FROM USERTEST";//SQL查询语句
18
SqlConnection _conn = new SqlConnection(_strConn);//创建一个数据库连接
19
_conn.Open();//打开数据库
20
_ad = new SqlDataAdapter(_sql, _conn);//数据库适配器
21
_ds = new DataSet();//数据填充,补充有人都不知道DataSet为什么可以断开数据库的时候取得数据,那是因为DataSet是以XML方式来存储数据的,还不懂的人DataSet做成文件。
22
_ad.Fill(_ds);//将数据库适配器数据填充DataSet
23
for(int i = 0; i < _ds.Tables[0].Rows.Count; i++)
24
{
25
DataRowCollection _drc = _ds.Tables[0].Rows;
26
this.cbValue.Items.Add(_drc[i]["UserID"].ToString());//动态添加数据库里面UserID字段值
27
}
28
}
29
private void cbValue_SelectedIndexChanged(object sender, System.EventArgs e)
30
{
31
DataView _dv = new DataView(this._ds.Tables[0]);//关键地方此方法有3个重载,今天讲的是其中一个Table重载
32
_dv.RowFilter = "UserID='"+this.cbValue.SelectedItem.ToString()+"'";//获得ComboBox中的值进入DataView;
33
this.dgData.DataSource = _dv;//绑定DataView对象
34
}
35
}
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
2
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
3
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
4
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
5
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
6
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
7
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
8
![](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
9
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockStart.gif)
10
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
11
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
12
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
13
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
14
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
15
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
16
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
17
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
18
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
19
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
20
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
21
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
22
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
23
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
24
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
25
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
26
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
27
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
28
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
29
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
30
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockStart.gif)
31
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
32
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
33
![](https://www.cnblogs.com/Images/OutliningIndicators/InBlock.gif)
34
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedSubBlockEnd.gif)
35
![](https://www.cnblogs.com/Images/OutliningIndicators/ExpandedBlockEnd.gif)