C#winform中调用wpf

原文:C#winform中调用wpf

在WinForm中是可以使用WPF中的控件(或者由WPF创建的自定义控件)

1.新建一个winform项目;

2.在解决方案上新建一个wpf项目;

如图:

如果有如下错误,就在winform中的引用添加System.xaml的引用即可:

错误 1 类型“System.Windows.Markup.IComponentConnector”在未被引用的程序集中定义。必须添加对程序集“System.Xaml, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089”的引用。

在winform中添加WPF项目下引用的三个程序集:PresentationCore,PrentationFramework,WindowsBase,以及wpf项目WpfApplication1的引用,如图:

在winform的Form1窗体的cs代码中添加using WpfApplication1的引用:

在winform中添加的button按钮的Click事件中New一下Wpf的窗体show出来即可显示:

  private void button1_Click(object sender, EventArgs e)
        {
            WpfApplication1.MainWindow wpfwindow = new WpfApplication1.MainWindow();
            wpfwindow.ShowDialog();
        }

效果如图:

原文地址:https://www.cnblogs.com/lonelyxmas/p/10759628.html

时间: 2024-11-07 12:50:23

C#winform中调用wpf的相关文章

WinForm中调用WPF控件

WinForm中调用WPF控件 在WinForm中可以使用WPF中的控件,或者由WPF创建的自定义控件: 步骤1:创建WinForm工程: 步骤2:在WinForm工程的解决方案资源管理器中,在刚刚创建的WinForm解决方案中新建或者添加现有的WPF用户控件工程: 步骤3:在WPF中创建自定义的控件,或者添加WPF控件到面板上: 步骤4:在WinForm面板上添加ElementHost控件(工具箱中): 步骤5:生成解决方案: 步骤6:在刚刚的ElementHost中的Child属性中添加刚刚

在winform中调用js文件并输出结果

在winform中调用js文件并输出结果默认分类 2007-10-19 16:35:06 阅读25 评论0 字号:大中小 由于项目需要在winform中调一个强大的js,所以把这个tip记录在此: 1.下载并安装Microsoft 下载 http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=D05FCF37-4D9F-4769-9442-0BCEEF907033 2.在项目中添加引用:msscript

Winform 中调用WebService

第一次在WINFORM中调用WebService,看了下别人的例子,感觉应该很简单. 参考了这位兄弟的内容 http://www.cnblogs.com/loveCloud/archive/2012/01/10/2317830.html 很迅速的完成了UI的制作,添加引用服务,嗯,输入WebService的地址,就能第一次体验结果了. 不过结果让我很失望:DeBug 一直提示我这句话...服务器无法处理请求. ---> 未将对象引用设置到对象的实例. 完了,两眼一抹黑.很自然的点了帮助,说是远程

WINFORM中加入WPF控件并绑定数据源实现跨线程自动更新

1. WINFORM中添加两个ElementHost,一个放WPF的Button,一个放WPF的TextBox.其中TextBox与数据源绑定,实现跨线程也可以自动更新,而不会出现WINFORM的TextBox控件与数据源绑定后,存在子线程中更新数据源报错(跨线程更新控件)的情况. using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System

【帅刺猬课堂】Winform中使用WPF的UserControl

今天准备做一个登录界面的时候,想用WPF来做出比较漂亮的界面,所有在Winform项目中加入WPF的用户控件,过程如下,FrmLogin是Winform界面,是父窗体,Login.xaml的WPF的UserControl是子窗体, 首先打开FrmLogin的设计界面,在左边的工具栏中找出拖到界面上,并将Dock设置为Fill,其实就是让ElementHost充满整个界面.然后在FrmLogin对应的代码中加入: 1 protected override void OnLoad(EventArgs

C#在winform中调用系统控制台输出

在Winform程序中有时候调试会通过Console.Write()方式输出一些信息,这些信息是在Visual Studio的输出窗口显示. 所以就会想,能不能调用系统的Cmd窗口输出呢,经过一番查阅,发现是可以的,现在就把方法写下了: 主要用到的是win32 API函数实现的: 1 [DllImport("kernel32.dll")] 2 static extern bool FreeConsole(); 3 [DllImport("kernel32.dll")

C# WinForm中使用WPF的控件

步骤1:创建WinForm工程 步骤2:在刚刚创建的WinForm工程中新建或者添加现有的WPF用户自定义控件 <UserControl x:Class="wndFormTest.ComBoBoxButton" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml&q

C# winForm中调用javascript文件中的方法

目前有很多的SNS社区或类SNS的网站,例如开心.51.校内等,但是发现大多数社区在邀请好友的时候都没有提供对QQ邮箱或者QQ空间好友列表获取的功能,不过似乎海内支持,但是网上相关QQ的文章还不是很多,希望这篇文章能给你带来一些帮助. QQ空间及邮箱登陆的校验方式: QQ空间及邮箱登陆的时候,用户输入的密码首先会被页面中的一段Js加密,然后加密过后的密码会加上验证码形成一个新的字串,接着这个新的字串被MD5(32位)加密,加密过后形成最终的密码,这就是我们为什么经常会发现我们在提交的时候我们的密

winform 中调用用户控件中 嵌套用户控件的事件

工作了很久,一直没有很深入的了解C#中的委托和事件. 来到新公司,主要的工作就是使用委托和事件操作数据.一下子不知道该如何下手.各方请教大神,得出下面的方法 1. 在A控件中定义一个事件,B控件触发的时候,调用一下这个事件.然后再在A的父级控件中写方法,+=的方式把方法委托给A的事件就行了 窗体: private void Form1_Load(object sender, EventArgs e)        {            UC_Content content = new UC_