【WPF】【追分】WPF中如何使用windows应用程序的第三方控件?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了【WPF】【追分】WPF中如何使用windows应用程序的第三方控件?相关的知识,希望对你有一定的参考价值。

【WPF】【追分】WPF中如何使用windows应用程序的第三方控件?
小弟有一个html的第三方控件.dll文件;
在普通的c#的Windows应用程序中,小弟能用这个dll的控件;
但是我把这个控件弄到WPF项目里之后,工具箱里那个控件是灰色的不让用;
请问:WPF能不能用Windows应用程序的第三方控件?
如果能用,请大虾细细道来,小弟不胜感激!

WindowsFormsHost 可以用这个!~
但是 如果用 WindowsFormsHost 这个,会出现 你的控件上不给可以 有其它WPF控件。。。有也不会显现。

比如:在这个控件的上方,有一个 ComboBox ,他的Popup 弹出到 WindowsFormsHost 上方的部分,是看不到的!~ 这个一个叫做 “空域” 的概念。( 《WPF 2010》 上写的)追问

WindowsFormsHost 我试了试
但貌似只能添加进去Windows标准控件,但是我想用的是第三方的dll控件。

追答

你这个第三方的控件,是真对什么写的?WPF 还是 WinForm的?

追问

winForm的,一个富文本编辑器控件

参考技术A 应该能用,先添加一个WindowsFormsHost,再试试

.Net:如何在 Windows 窗体应用程序中使用 WPF 用户控件?

【中文标题】.Net:如何在 Windows 窗体应用程序中使用 WPF 用户控件?【英文标题】:.Net: How to use a WPF user control in a windows forms application? 【发布时间】:2011-02-21 09:00:00 【问题描述】:

如何在 Windows 窗体应用程序中使用 WPF 用户控件?

【问题讨论】:

这能回答你的问题吗? Put WPF control into a Windows Forms Form 【参考方案1】:

来自 MSDN:

使用ElementHost 控件放置一个 Windows 窗体上的 WPF UIElement 控件或表单。

例子:

private void Form1_Load(object sender, EventArgs e)

    // Create the ElementHost control for hosting the
    // WPF UserControl.
    ElementHost host = new ElementHost();
    host.Dock = DockStyle.Fill;

    // Create the WPF UserControl.
    HostingWpfUserControlInWf.UserControl1 uc =
        new HostingWpfUserControlInWf.UserControl1();

    // Assign the WPF UserControl to the ElementHost control's
    // Child property.
    host.Child = uc;

    // Add the ElementHost control to the form's
    // collection of child controls.
    this.Controls.Add(host);

Here 是一个很好的教程。

名为 ElementHost 的控件用于 WinForms中的WPF是什么 WindowsFormsHost 用于 WinForms WPF。在设计器中,您可以找到 这个控件在工具箱下面 “WPF 互操作性”。

【讨论】:

以上是关于【WPF】【追分】WPF中如何使用windows应用程序的第三方控件?的主要内容,如果未能解决你的问题,请参考以下文章

如何在使用 WCF 服务的 WPF 应用程序中集成 LDAP

如何给wpf的按钮添加背景图片

.Net:如何在 Windows 窗体应用程序中使用 WPF 用户控件?

如何从 WPF 访问 Windows.Devices.Scanners

wpf 多语言对应 切换了 dll后 如何刷新窗体(window)

wpf中,如何引用其他xaml文件中的Resources