在类库或winform项目中打开另一个winform项目窗体的方法

作者:shichen2014 时间:2023-08-14 06:47:31 

本文实例讲述了在类库或winform项目中打开另一个winform项目窗体的方法。分享给大家供大家参考。具体如下:

一、问题:

假设类库或winform项目为A,另一个winform项目为B.那麽在A中添加一个接口,里面有一个Show方法,然后在B中写一个类b继承这个接口,并重写这个方法,具体内容为弹出某个窗体.然后在A中另一个类a中实例化B中的b类,并把它赋给A中的接口,然后调用接口的Show方法就可以弹出B中指定的窗体.

需要注意的是项目A和项目B需要互相引入对方的EXE或DLL文件.

二、实现代码:

namespace His
{
  public interface IShow
  {
    void Show();
  }
}
namespace EMRApp
{
   public class CShow:IShow
    {
       public void Show()
       {
           Form frm = new Form();
           frm.Text = "测试EMRAPP窗口";
           frm.Show();
       }
    }
}

namespace His
{
   public class CTransfShow
    {
       public void aaa()
       {
           IShow ish = new CShow();
           ish.Show(); //here
       }
    }
}

namespace His
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void Form1_Load(object sender, EventArgs e)
        {
            CTransfShow ct = new CTransfShow();
            ct.aaa();
        }
    }
}

希望本文所述对大家的C#程序设计有所帮助。

标签:winform,窗体
0
投稿

猜你喜欢

  • 详细了解C语言二叉树的建立与遍历

    2021-08-17 10:24:01
  • C#实现获取鼠标句柄的方法

    2022-05-06 21:13:41
  • springboot中使用FastJson解决long类型在js中失去精度的问题

    2022-04-05 05:15:27
  • Android本地实现搜索历史记录

    2023-08-15 22:25:17
  • C#设计模式之工厂模式

    2023-07-10 13:43:33
  • Java绘制迷宫动画并显示的示例代码

    2022-04-06 22:37:45
  • C#中怎么将一个List转换为只读的

    2021-10-04 15:52:51
  • C#多线程之线程池(ThreadPool)

    2022-05-02 07:12:15
  • IDEA 2021.3 使用及idea2021.3.1激活使用方法

    2021-06-06 03:49:38
  • 详解Spring框架下向异步线程传递HttpServletRequest参数的坑

    2021-05-31 04:45:21
  • Java如何跳出当前多重循环你知道吗

    2022-12-17 02:22:17
  • Android开发手册shape属性和子属性使用说明

    2023-11-02 09:44:43
  • Android 区别真机和模拟器的几种方法

    2022-05-19 14:13:44
  • Java反射(Class类,Class对象获取)

    2021-06-27 05:55:24
  • Spring使用ThreadPoolTaskExecutor自定义线程池及异步调用方式

    2022-07-22 21:53:32
  • C# 大小写转换(金额)实例代码

    2021-07-06 00:33:56
  • Javaweb获取表单数据的多种方式

    2022-12-25 18:13:41
  • java中字符串转整数及MyAtoi方法的实现

    2023-09-23 20:54:19
  • 基于mybatis-plus timestamp返回为null问题的排除

    2023-08-07 00:43:50
  • SpringBoot打Jar包在命令行运行流程详解

    2023-11-24 16:53:59
  • asp之家 软件编程 m.aspxhome.com