1. 程式人生 > >C#圖解—Windows Forms資料繫結技術

C#圖解—Windows Forms資料繫結技術

    BindingSource元件是.Net在Windows Forms資料繫結方面最重要的創舉之一,它能夠為窗體封裝資料來源,讓控制元件的資料繫結操作更加簡便。使用時,一般先在窗體上加入一個BindingSource元件,接著將BindingSource元件繫結至資料來源,最後再將窗體上的控制元件繫結至BindingSource元件。通常將BindingNavigator控制元件與BindingSource元件搭配使用,以便瀏覽BindingSource元件的資料來源。

資料繫結的示意圖如圖1所示:

 

1、資料繫結的具體步驟如下:

(1)設定BindingSource元件的DataMember、DataSource屬性:

DataSet ds = new DataSet();

OleDbDataAdapter da= new OleDbDataAdapter(sql,conn);

da.Fill(ds, "user"); //產生資料來源,即DataSet元件

bdsUser.DataMember = ds.Tables[0].TableName; //bdsUser為BindingSource元件

bdsUser.DataSource = ds;

(2)控制元件呼叫資料繫結方法:

public Binding Add

(

         string propertyName,

         Object dataSource,

         string dataMember

)

propertyName

要繫結的控制元件屬性的名稱。

dataSource

表示資料來源的 Object。

dataMember

要繫結到的欄位名稱。

2、常用控制元件的資料繫結方法

(1)文字框資料繫結

一般對文字框的Text屬性進行資料繫結,程式碼如下:

txtName.DataBindings.Add("Text", bdsUser, "使用者名稱");

(2)組合框資料繫結

可分別對組合框的ValueMember、 DisplayMember屬性進行資料繫結:

cmbPriority.ValueMember = "qx";

cmbPriority.DisplayMember = "qx";

cmbPriority.DataSource =bdsQx;

另外,還可對SelectedValue屬性進行資料繫結

cmbPriority.DataBindings.Add("SelectedValue", bdsUser, "許可權");

(3)DataGridView資料繫結

DataGridView控制元件提供強大、靈活的以表格形式顯示資料的功能。可通過設定DataSource屬性為DataGridView控制元件繫結資料來源:

dgvUser.DataSource = bdsUser;

BindingNavigator控制元件是一組用來瀏覽與處理窗體資料來源的標準按鈕,包括:第一條、上一條、下一條、最後一條以及資料記錄總數。且BindingNavigator控制元件繼承了ToolStrip類的所有特性與功能,它同樣扮演了容器的角色,可以包含ToolStripLabel、ToolStripTextBox、ToolStripButton等控制元件。我們可以在窗體設計階段從下列列表框中選擇要新增至BindingNavigator的ToolStripItem控制元件,如圖2所示:

使用時,通常將BindingNavigator控制元件的BindingSource屬性設定成要瀏覽的BindingSource元件,如:

bdnUser.BindingSource = bdsUser;

4、綜合使用上述控制元件,可以完成一個基本的管理資訊系統,程式執行介面如圖3所示: