大家好,又见面了,我是你们的朋友全栈君。
WinForm之中BindingNavigator控件的使用
在微软WinForm中,BindingNavigator控件主要用来绑定数据。可以将一个数据集合与该控件绑定,以进行数据
联动的显示效果。如图下图所示:
那么,下面我们就来用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; } } }}
再次,创建BindingSource对象,并在窗体加载事件中将BindingNavigator控件,与DataGridView,文本框,按
钮控件进行数据绑定,进行数据联动显示效果;
示例代码: Form1.cs
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;namespace BindingDemo{ public partial class MainForm : Form { //创建一个泛型集合 List<User> users = new List<User>(); // BindingSource bs = new BindingSource(); public MainForm() { InitializeComponent(); } /// <summary> /// 窗体加载事件 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> 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<>泛型集合的对象中 users.Add(zh); users.Add(li); users.Add(ww); users.Add(ll); users.Add(X); users.Add(spaider); users.Add(ironman); //将泛型集合对象中的值赋给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(); } }}
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/158026.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...