Winform 窗口加载实例(三)-----功能菜单

本文探讨如何在Winform的MDI应用程序中实现类似Excel的功能菜单,包括父窗口调用子窗口功能、子窗口功能多样化以及子窗口控制父窗口控件。通过虚函数、重写和ActiveMdiChild属性,实现MDI子窗口间的交互,并提供了一个使用示例。
摘要由CSDN通过智能技术生成

      打开Excel,我们发现Excel的每个Sheet里面并没有任何的功能操作按钮或菜单,但是我们仍然能对每个sheet进行各种操作,这些操作都可以 由上面的功能菜单来实现。对于MDI形式的界面,从某种程度上来看,就很类似一个Excel Application,那能不能实现像Excel Application那样的功能操作呢?

      要实现那样的功能操作,有几个问题需要解决:

      (1)MDI父界面能调用到MDI子界面的功能

      (2)MDI子界面对通过一个功能,能不同实现

      (3)MDI子窗口可以实现对父窗口的控件控制(扩展功能)

     界面实现的形式如下:

 

      上面是一般菜单,下面是通用功能按钮。每个按钮都可以实现子窗口的功能,通俗的说就是“不用你来调用我,只需我来调用你”(比较类似于观察者模式)。当然实现这中设计,每个子界面的功能要有很大的相似性才比较好,否则最好不要这样设计。

       我们知道,在.net的方法调用中,如果是非静态的方法,需要先实例化类的对象,然后才能调用类的方法,如果是静态方法,也是需要知道具体的类才能调用其 方法。如果在MDI父窗口的功能要调用MDI子窗口的功能,是否需要实例化每个MDI子窗口的对象才能调用其方法呢?在.net

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值