BindingNavigator控件[通俗易懂]

BindingNavigator控件[通俗易懂]WinForm之中BindingNavigator控件的使用在微软WinForm中,BindingNavigator控件主要用来绑定数据。可以将一个数据集合与该控件绑定,以进行数据联动的显示效果。如图下图所示:那么,下面我们就来用BindingNavigator控件做一下上图所示的效果。分析:该案例以BindingNavigator控件为主线,我们定义一个实体类

大家好,又见面了,我是你们的朋友全栈君。

WinForm之中BindingNavigator控件的使用
在微软WinForm中,BindingNavigator控件主要用来绑定数据。可以将一个数据集合与该控件绑定,以进行数据

联动的显示效果。如图下图所示:

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账号...

(0)
blank

相关推荐

  • 西门子PLC s7-1200学习之路「建议收藏」

    西门子PLC s7-1200学习之路「建议收藏」1Introduction最近因为一个项目需要使用西门子PLC,买了一个入门级的PLCs7-1200,并完成了一个PLC和PC通过TCP进行通信的小程序,为了防止活干完了,内容就全忘了,所以用一个笔记进行梳理和总结。入门一种语言,需要回答新手的几个问题,这个笔记按照回答的方式梳理。2问题2.1PLC是什么,什么时候用,要怎么选?根据[1],PLC可以替代继电器功能并完成复杂的控制功能。个人感觉功能上来看,PLC、DSP、单片机和FPGA之间的界限越来越小,只是各有侧重。PLC因为基于梯形图

    2022年10月18日
  • Linux 配置Node环境变量[通俗易懂]

    Linux 配置Node环境变量[通俗易懂]修改/etc/profile文件,在末尾添加以下内容exportNODE_HOME=/usr/local/node//Node所在路径exportPATH=$NODE_HOME/bin:$PATH修改完成后需要重新登陆才能生效,也可以执行命令source/etc/profile或者./etc/profile来生效(注意。与/etc/profile中有一个空格)查看P…

  • Android屏幕适配全攻略(最权威的官方适配指导)[通俗易懂]

    Android屏幕适配全攻略(最权威的官方适配指导)[通俗易懂]Android的屏幕适配一直以来都在折磨着我们这些开发者,本篇文章以Google的官方文档为基础,全面而深入的讲解了Android屏幕适配的原因、重要概念、解决方案及最佳实践,我相信如果你能认真的学习本文,对于Android的屏幕适配,你将不再有疑惑!Android屏幕适配出现的原因在

  • pytorch笔记:04)resnet网络&解决输入图像大小问题「建议收藏」

    pytorch笔记:04)resnet网络&解决输入图像大小问题「建议收藏」因为torchvision对resnet18-resnet152进行了封装实现,因而想跟踪下源码(^▽^)首先看张核心的resnet层次结构图(图1),它诠释了resnet18-152是如何搭建的,其中resnet18和resnet34结构类似,而resnet50-resnet152结构类似。下面先看resnet18的源码图1resnet18首先是models.resnet18…

  • Mysql 查询优化

    Mysql 查询优化

  • hmacsha256算法原理_一次解析

    hmacsha256算法原理_一次解析需要支持HMACSHA256算法,GitHub找到源码具体地址https://github.com/aperezdc/hmac-sha256/blob/master/hmac-sha256.c移植到目标平台,稍作处理测试ok了,原理:1.输入密钥key和固定的数据(0x36)进行异或操作生成一个64B的数据kx;2.使用kx+输入数据执行sha256算法得到32B的out;3.使用…

    2022年10月22日

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号