JOO

努力成就未来!

數據分頁瀏覽
 
數據分頁瀏覽
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using NorthwindDataAccess;
 
namespace PagingSample
{
   public partial class Form1 : Form
   {
      public Form1()
      {
         InitializeComponent();
      }
 
      private void OnFormLoad(object sender, EventArgs e)
      {
         // Set up event handlers for connector position changed
         // and textbox text changed events
         m_CustomersBindingSource.PositionChanged += new EventHandler(OnPositionChanged);
         m_PositionTextBox.TextChanged += new EventHandler(OnPositionTextChanged);
         // Set up data bindings
         CustomersDataSet nwData = CustomersDataSet.GetCustomers();
         m_CustomersGrid.DataSource = m_CustomersBindingSource;
         m_CustomersBindingSource.DataSource = nwData.Customers;
         AddTextBoxDataBindings();
         AddComboBoxDataBindings();
 
      }
 
      private void AddTextBoxDataBindings()
      {
         m_CustomerIDTextBox.DataBindings.Add("Text", m_CustomersBindingSource, "CustomerID");
         m_CompanyNameTextBox.DataBindings.Add("Text", m_CustomersBindingSource, "CompanyName");
         m_ContactNameTextBox.DataBindings.Add("Text", m_CustomersBindingSource, "ContactName");
         m_ContactPhoneTextBox.DataBindings.Add("Text", m_CustomersBindingSource, "Phone");
      }
 
      private void AddComboBoxDataBindings()
      {
         m_ContactsCombo.DataSource = m_CustomersBindingSource;
         m_ContactsCombo.DisplayMember = "ContactName";
         m_ContactsCombo.ValueMember = "CustomerID";
      }
      private void OnFirstRecord(object sender, EventArgs e)
      {
         m_CustomersBindingSource.MoveFirst();
      }
 
      private void OnPreviousRecord(object sender, EventArgs e)
      {
         m_CustomersBindingSource.MovePrevious();
      }
 
      private void OnNextRecord(object sender, EventArgs e)
      {
         m_CustomersBindingSource.MoveNext();
      }
 
      private void OnLastRecord(object sender, EventArgs e)
      {
         m_CustomersBindingSource.MoveLast();
      }
 
      private void OnPositionTextChanged(object sender, EventArgs e)
      {
         int enteredPos;
         bool success = int.TryParse(m_PositionTextBox.Text, out enteredPos);
         if (success)
         {
            m_CustomersBindingSource.Position = enteredPos;
         }
      }
 
      void OnPositionChanged(object sender, EventArgs e)
      {
         m_PositionTextBox.Text = m_CustomersBindingSource.Position.ToString();
      }
 
   }
}
 
 
BindingSource類有一套方法可以在數據源上顯式地瀏覽數據。MoveNextMovePreviousMoveFirst以及MoveLast方法會執行它們響應的功能來控制數據源的當記錄的位置。還有一個顯式的屬性Position,可以顯式地將當前位置設置為順序記錄號。除了這些方法和屬性外,當當前位置或數據源的數據變更的時候,一系列的時間會被觸發。這些事件允許其他可能不是直接綁定到綁定源的對象或容器當當前位置發生修改的時候得到通知,然後它們就可以在事件處理程序中做出響應的反應。使用這一功能編寫代碼移動到下一條記錄就跟下面的代碼一樣簡單:
m_CustomersBindingSource.Position+=1
或者
m_CustomersBindingSource.MoveNext();
 
在代碼中,還有個事件值得注意:OnPositionChangedOnPositionTextChangedOnPositionChanged這個事件在基礎數據源的當前記錄位置改變的任何時候都會觸發。
 
Net2.0中新的可用的控件是BindingNavigator,這個控件實現了綁定源的分頁瀏覽功能。
 v
阅读更多
个人分类: C#学习
想对作者说点什么? 我来说一句

gridview實現真分頁

2014年04月04日 23KB 下载

下拉式+gridview+頁碼分頁

2008年08月03日 4KB 下载

android.chrome.apk

2014年05月04日 28.63MB 下载

HttpAnalyzerFullV5

2013年04月15日 6.02MB 下载

jsp&servelt詳解

2007年07月15日 6MB 下载

没有更多推荐了,返回首页

不良信息举报

數據分頁瀏覽

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭