WinForm 与WPF 窗体之间的想到调用

先放置一个容器控件,并设计 好WinForm(或WPF)窗口

winform 调用 wpf

            ElementHost el = new ElementHost();
            el.Dock = DockStyle.Fill;
            this.panelStation.Controls.Add(el);
            ucStationMess_WPF stat = new ucStationMess_WPF();
            el.Child = stat;

  其中,panelStation 为winform 的窗口控件

ucStationMess_WPF 为WPF窗体

WPF调用Winform

WindowsFormsHost windowsFormsHost = new WindowsFormsHost();
            SubWin.ShowStprm stprm = newSubWin.ShowStprm ();

stprm.TopLevel = false; 

windowsFormsHost.Child = stprm; 
stackPanel1.Children.Add(windowsFormsHost);

  其中,stprm为winform窗体

             stprm.TopLevel = false; 使winform不为顶级窗体(顶级窗体不能加载到其他窗体 )

stackPanel1 为WPF的窗口控件

时间: 2024-10-14 00:58:28

WinForm 与WPF 窗体之间的想到调用的相关文章

c# 不同窗体之间传值和调用

1.子窗体事件刷新父窗体界面值 子窗体定义委托和事件 //声明一个委托 public delegate void DisplayUpdateDelegate(string str); //声明事件 public event DisplayUpdateDelegate ShowUpdate; private void Form2_Load(object sender, EventArgs e) { } private void button1_Click(object sender, EventA

c# winform 窗体之间的传参

说起winform程序中窗体之间的参数互传,大家找度娘会找到很多方法: 1.在窗体类中创建全局变量,类型为公开.静态的: 2.在窗体类中定义狗仔函数: 3.通过实践来船体参数: 这三种思路完全来自于霖小屋的c# winform窗体之间传递参数问题总结,大家可以看看他的这篇博客学习学习. 下面我要给大家说的一种方法相对来说有点繁琐,但对于winform程序初学者来说绝对的受用.之前在度娘上寻找winform窗体的显示与隐藏受到点启发,本来winform程序创建新的窗体的时候是不带参数的,为了能够在

利用SendMessage实现winform与wpf之间的消息传递

引言    有一次心血来潮,突然想研究一下进程间的通信,能够实现消息传递的方法有几种,其中win32api中的sendmessage就是当中的一种比较简单的方法.于是参考了网上各种资料,做了一个小demo. 发送方Winform    1.新建一个Winform项目,添加控件,如下 2.界面做好,接着来编写代码,首先利用DllImport来声明SendMessage函数原型,如下: [DllImport("User32.dll")] private static extern int

winform多窗体之间的操作

1.通过操作一个窗体打开另一个窗体 已有窗体为Form1.Form1中有一个按钮,对该按钮编写点击事件: Form2 f2 = new Form2();f2.Show(); 通过这段代码来打开Form2. 在实际应用中会出现代开Form2后需要Form1隐藏的情况,此时可以加入代码:this.Hide();来实现隐藏Form1. [不能关闭Form1,如果关闭Form1,那么Form2也会关闭,因为Form1是主窗体] 2.在窗体之间进行值的传递 在某些情况下,需要用到某个已经获取到的值,为了提

winform 窗体之间的操作

1 通过一个窗体按钮打开另一个窗体 Form f2 = new Form2(); f2.Show(); 通过这个打开第二个页面  要想只显示一个页面只能隐藏第一个页面 如果第一个页面关闭 第二个页面也会跟着关闭.. 2窗体之间的传值 窗体之间传值 需要两个甚至多个窗体 Form f2 = new Form2(要传递的值);f2.Show(); 然后再另一个需要这个值的窗体中 Users z = null;//根据值的类型实例化public Form4(Users a) //方法这里也要写要传入的

winform独立窗体之间传值的简单方法

最近做一个多窗体联动的小程序,用到了窗体间传值. 网络上到处都是父窗体和子窗体之间传值的方法,总结起来有 1.有参数的构造函数, 2.委托 以委托为例,父窗体如果想要发送信息给子窗体,只需要在父窗体中定义好事件. //str为发送内容,formName为指定要发送给的窗体名字 public delegate void ReceiveMsg(string str,string formName); public event ReceiveMsg receiveMsg; 然后在实例化子窗体时,将子窗

Winform开发之窗体传值

Winform的窗体之间的数据传递是开发的必备技术,下面介绍几种典型的传值方法 1.构造函数传值,但这种方法是单向的(推荐) 上代码,先传值 private void button2_Click(object sender, EventArgs e) { Form3 fr3 = new Form3("要传的值啊"); fr3.ShowDialog(); } 接值,对了,这里需要重载一个Form3的构造函数,然后将拿到的值显示出来 public Form3(string canshu)

Winform开发之窗体显示、关闭与资源释放

Winform的窗体涉及到一般窗体(单文档窗体).MDI窗体.窗体之间的关系等,那么如果调用打开新窗体.如何关闭窗体.窗体资源的释放等都关系到软件运行的效率,本文一一介绍 1.窗体的显示 从一个窗体打开另一个窗体,基本会用到两种方法,即Show()和ShowDialog(),前者是一般的窗体,后者是模态窗体. 两种调用是由些许的不同 (1)在调用Form.Show方法后,Show方法后面的代码会立即执行 (2)在调用Form.ShowDialog方法后,写在其后面的程序会在模态窗口关闭后再执行.

逆天通用水印支持Winform,WPF,Web,WP,Win10。支持位置选择(9个位置 ==》[X])

好几天没上QQ了,今天上了个QQ,,额....额...貌似消息还挺多,没及时回复的还请见谅~~刚好昨天无聊把水印这快封装出来了,支持图片水印,文字水印,索引图水印和非索引图水印,支持位置选择(9个位置 ==>[X]).好吧不高兴屁话了,软件是WPF的(只满足我的需求,如果有需要可以出第个二版本),水印核心代码封装了个Helper类(通用:支持Winform,WPF,Web,WP,Win10)软件共享一下==>http://pan.baidu.com/s/1qWDwv4C 源码看下面 水印类 /