C# 窗体继承案例

当有俩个窗体的界面有很多地方类似,或者俩个界面的业务逻辑比较雷同,这个时候可以使用继承,减少代码的重复率,降低耦合度,便于项目的开发与维护。

场景:现在有用户界面和记录界面,俩个界面共同的效果是都有新增、删除、修改、插入等四个按钮。先把共同的组件设计在父窗体中,每个子窗体继承于该父窗体即可。

     1 先创建父窗体FormParent.cs 在此界面添加相同的组件部分

2  添加子窗体用户界面和记录界面 修改继承代码 ,把FormUser : Form 改成FormUser : FormParent 即可

3 添加主窗体页面 添加俩个按钮 分别跳转到对应的界面

4 这个时候可以运行,当跳转到对应的界面时候 会把父窗体的加载到子窗体上

5 记录界面如下

6 如果想要点击新增按钮处理的业务逻辑不一样,可以在父窗体下声明属性,然后在子窗体中的

构造函数中给属性赋不同的值例如

父窗体定义属性如下

上图当中的  [Browsable(true)]属性是为了让子窗体的属性面板上显示B属性和MyColor属性,也就是可以通过属性面板上修改属性值如下图

7 然后在父窗体的新增按钮点击事件中进行判断 可以区分是哪个界面的业务逻辑

  public void button1_Click(object sender, EventArgs e)
  {
      //判断当前窗体是哪个窗体 如果是用户窗体 弹新增用户
      if (A == 1)
      {
          MessageBox.Show("新增用户");
      }else if (A == 2)
      {
          MessageBox.Show("新增记录");
      }
  }

8 额外提醒:子窗体继承过来的父窗体控件默认上不可修改的,可以把父控件中对应的组件

的Modifiers设置为public,子窗体的组件方可修改

写在最后:不经一番寒彻骨,怎得梅花扑鼻香

希望与君共勉。

  • 18
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值