天天看點

WinForm之中BindingNavigator控件的使用

在微軟WinForm中,BindingNavigator控件主要用來綁定資料。可以将一個資料集合與該控件綁定,以進行資料關聯的顯示效果。如圖下圖所示:

<a target="_blank" href="http://blog.51cto.com/attachment/201206/153255253.jpg"></a>

那麼,下面我們就來用BindingNavigator控件做一下上圖所示的效果。

分析:該案例以BindingNavigator控件為主線,我們定義一個實體類,将實體類以集合的形式顯示在DataGridView中,同時,将BindingNavigator與DataGridView綁定,将BindingNavigator與文本框顯示資料綁定,将BindingNavigator與Button控件綁定,來示範一個資料關聯的效果,已達到學習BindingNavigator控件的目的。

步驟:

首先,在Visual Studio中建立一個WinForm應用程式,在Form1中添加BindingNavigator控件,DataGridView控件,兩個文本框,四個按鈕(分别表示:First,Previuos,Next,Last);

其次,在項目中添加一個使用者類User.cs,該類中有兩個屬性Name和Age;

示例代碼:

using System;

using System.Collections.Generic;

using System.Text;

namespace BindingDemo

{

public class User

public User()

}

public User(string name,int age)

this.Name = name;

this.Age = age;

private string name;

public string Name

get { return name; }

set { name = value; }

private int age;

public int Age

get { return age; }

set { age = value; }

再次,在Form1的代碼之中,建立User對象,并将對象儲存到List&lt;&gt;泛型集合之中,并顯示到DataGridView中;

關鍵代碼:

//建立一個泛型集合

List&lt;User&gt; users = new List&lt;User&gt;();

/// &lt;summary&gt;

/// 窗體加載事件

/// &lt;/summary&gt;

/// &lt;param name="sender"&gt;&lt;/param&gt;

/// &lt;param name="e"&gt;&lt;/param&gt;

private void MainForm_Load(object sender, EventArgs e)

//建立使用者

User zh = new User("張三", 12);

User li = new User("李四",18);

User ww = new User("王五",20);

User ll = new User("劉六",30);

User X = new User("x-man",30);

User spaider = new User("spaiderman",25);

User ironman = new User("ironman",30);

//将使用者添加到List&lt;&gt;泛型集合的對象中

users.Add(zh);

users.Add(li);

users.Add(ww);

users.Add(ll);

users.Add(X);

users.Add(spaider);

users.Add(ironman);

再次,建立BindingSource對象,并在窗體加載事件中将BindingNavigator控件,與DataGridView,文本框,按

鈕控件進行資料綁定,進行資料關聯顯示效果;

示例代碼: Form1.cs

using System.ComponentModel;

using System.Data;

using System.Drawing;

using System.Windows.Forms;

public partial class MainForm : Form

//

BindingSource bs = new BindingSource();

public MainForm()

InitializeComponent();

//将泛型集合對象中的值賦給Bindingsource對象的DataSource

bs.DataSource = users;

//将資料顯示到DataGridView中去

this.dgvMain.DataSource = bs;

//綁定導航

this.bindingNavigator1.BindingSource = bs;

//與文本框進行資料綁定

this.txtName.DataBindings.Add("Text",bs,"Name");

this.txtAge.DataBindings.Add("Text",bs,"Age");

//移動到第一行

private void btnFirst_Click(object sender, EventArgs e)

this.bs.MoveFirst();

//移動到前一行

private void btnPrevious_Click(object sender, EventArgs e)

this.bs.MovePrevious();

//移動到下一行

private void btnNext_Click(object sender, EventArgs e)

this.bs.MoveNext();

//移動到最後一行

private void btnLast_Click(object sender, EventArgs e)

this.bs.MoveLast();

本文轉自 huohe2009 51CTO部落格,原文連結:http://blog.51cto.com/zhaojie/886386

<a href="http://blog.51cto.com/search/result?q=BindingNavigator" target="_blank">BindingNavigator</a>