Bentley ORD(openroads designer) 二次开发(BIM)第五节 控件封装

Bentley ORD(openroads designer) 二次开发(BIM)第五节 控件封装

主题:C# WinForm 自定义控件封装


前言

赵钱孙李
周吴郑王
冯陈楚魏
切糕沾白糖

咱们书接上文,
在WinForm窗体开发中,默认的控件大都是 string、bool这种基础类型,但实际项目中,数据往往包括各种对象,将这些对象型的数据绑定至控件时,就不是很方便,难以实现数据绑定与联动。想完成如上的需求,我们就可以尝试自定义控件封装。


使用场景设定:依据惯例,我们先设定一个使用场景,需要这样一个下拉选框,下拉选项显示用户易读的中文词条,例如“小王”,点击词条后,后台获取“小王”对应的ID,例如“user001”,并满足数据绑定效果,即后台数据与前端显示实时联动。

一、新建自定义控件类

首先新建一个类,testCom;
在这里插入图片描述
新建后,继承 System.Windows.Forms.ComboBox;

using System.Windows.Forms;

namespace WindowsFormsApplication1.组件封装
{
   
    class testCom : ComboBox
    {
   

        public testCom()
        {
   
            value = ""; //定义属性值value用于绑定数据
        }

        private string _value;

        public string value
        {
   
            get {
    return _value; }
            set {
    _value = value; if (!string.IsNullOrEmpty(this.ValueMember)) {
    this.SelectedValue = _value; } } 
            //赋值逻辑,当ValueMember不为空时,SelectedValue等于_value
        }
		
		//重写方法 OnSelectedValueChanged
        protected override void OnSelectedValueChanged(EventArgs e)
        {
   
            base.OnSelectedValueChanged(e);
            value = this.SelectedV
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值