• WinForm中调用WPF控件


    WinForm中调用WPF控件

     

    在WinForm中可以使用WPF中的控件,或者由WPF创建的自定义控件;

    步骤1:创建WinForm工程;

    步骤2:在WinForm工程的解决方案资源管理器中,在刚刚创建的WinForm解决方案中新建或者添加现有的WPF用户控件工程;

    步骤3:在WPF中创建自定义的控件,或者添加WPF控件到面板上;

    步骤4:在WinForm面板上添加ElementHost控件(工具箱中);

    步骤5:生成解决方案;

    步骤6:在刚刚的ElementHost中的Child属性中添加刚刚的WPF生成的控件;

    步骤7:完成。

    如果在ElementHost的Child属性中添加了WPF生成的控件,编译的时候出现如下错误:

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

    则要在WinForm中解决方案-> 添加引用->System.Xaml,类似的错误,就添加相应的引用。

    如何在winform中调用WPF用户控件里面的属性和方法呢,如图:

    WinForm工程为test,WPF用户控件工程为WpfControlLibrary1。

    假设我们的WpfControlLibrary1中有个方法叫wpf_fun();如果我们要在test中调用的话,则需要把WPF的控件添加到WinForm中的ElementHost中,然后再需要调用的地方写上((WpfControlLibrary1.MainControl)elementHost1.Child).wpf_fun();,其中MainControl就是你自己创建的自定义的控件的名称,这样就可以了。

  • 相关阅读:
    自己写的asp日历控件
    处处留心皆学问
    模块化闲谈
    原理……
    DIV和SPAN的区别
    javascript学习感触
    CSS 匹配顺序
    配置闲谈
    找到的一个读取shape数据的代码
    问题和收获
  • 原文地址:https://www.cnblogs.com/hdsong/p/4835860.html
Copyright © 2020-2023  润新知