第一種:
DataSet ds=new DataSet ();
this.dataGridView1.DataSource=ds.Table[0];
第二種:
DataTable dt=new DataTable();
this.dataGridView1.DataSource=dt;
第三種:
DataSet ds=new DataSet ();
this.dataGridView1.DataSource = ds.Tables["表名"];
第四種:
DataSet ds=new DataSet ();
this.dataGridView1.DataSource = ds;
this.dataGridView1.DataMember = "表名";
第五種:
ArrayList Al = new ArrayList();
this.dataGridView1.DataSource = Al;
第六種:
Dictionary<string, string> dic = new Dictionary<string, string>();
this.dataGridView1.DataSource = dic;
第七種:
DataView dv = new DataView();
this.dataGridView1.DataSource = dv;
第八種:
this.dataGridVi.DataSource = new BindingList<Object>(List<Object>);
非綁定模式 (ref:http://blog.csdn.net/yudandan10/article/details/9618763)
所謂的非綁定模式就是dataGridView控件顯示的數據不是來自於綁定的數據源,而是可以通過代碼手動將數據填充到DataGridView控件中,這樣就為DataGridView控件增加了很大的靈活性
在此我們先來了解一下DataGridView控件有多種類型的列 ,而這些類型都是間接的或直接的繼承了DataGridViewColumns() 類 ,下面是我們能夠長用的幾種類型
類 |
說明 |
DataGridViewTextBoxColumn |
與基於文本的值一起使用,在綁定到數字和字符串類型的值時自動生成 |
DataGridViewCheckBoxColumn |
與boolean和checkState值一起使用,在綁定到這些類型的值時自動生成 |
DataGridViewImageColumn |
用於顯示圖像,在綁定到字節數組、Image對象或Icon對象自動生成 |
DataGridViewButtonColumn |
用於在單元格中顯示按鈕,不會在綁定時自動生成,通常用來做未綁定列 |
DataGridViewComboBoxColumn |
用戶在單元格中顯示下拉列表,不會在綁定時自動生成,通常收到進行數據綁定 |
DataGridViewLinkColumn |
用於在單元格中顯示超鏈接,不會在綁定時自動生成,通常需要進行手動綁定數據 |
了解了這些看下面的例子
-
//'創建一個顯示textBox的列() Dim col1 As DataGridViewTextBoxColumn =New DataGridViewTextBoxColumn(); col1.Name = "Name" ; col1.HeaderText = "姓名" ;//'設置標題中顯示的文本 Dim col3 As DataGridViewTextBoxColumn = NewDataGridViewTextBoxColumn(); col3.Name = "sex" ; col3.HeaderText = "性別" ; //'將新建的列添加到控件中 DataGridView1.Columns.Add(col1) ; DataGridView1.Columns.Add(col3) ; //'添加行 //'創建新行 Dim row As DataGridViewRow = NewDataGridViewRow(); row.CreateCells(DataGridView1) ; //'設置單元格的值 row.Cells(0).Value = "張三" ; row.Cells(1).Value = "男" ; DataGridView1.Rows.Add(row) ; //'添加第二行 im row1 As String() = {"李四", "男"} ; DataGridView1.Rows.Add(row1);
另外對於添加標題列也可以不用代碼添加,而是通過手動添加列 操作步驟如下
1,點擊DataGridView控件 就可以看到一個小三角,點擊小三角彈出菜單 選擇編輯列如下所示
編輯列:
同時也可以修改列的屬性