问题标签 [elementhost]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
944 浏览

wpf - 鼠标滚轮事件未执行

我正在尝试在 Windows 窗体中使用画布并为此缩放和平移该画布我首先放置元素主机,然后将画布放在其中,然后将图片框放在画布中,然后尝试缩放画布我尝试了各种方法,但任何事件控件未执行我还编写了所有鼠标滚轮事件,但没有一个被执行所以请建议我下面的解决方案是我添加控件和鼠标滚轮事件的代码

0 投票
2 回答
1304 浏览

wpf - Winforms 托管 WPF 控件事件

我正在尝试在我的 winform 上托管一个 wpf 控件(gridview)。

我正在使用 elementHost 在我的 winform 上创建 wpf 控件。

每当我想向我的 wpf 控件添加行时,如何创建一个事件?

0 投票
2 回答
482 浏览

c# - 如何将 Windows 窗体元素主机的消息框显示为模态?

我在 C# 中有 Windows 窗体应用程序。我有 WPF 用户控件的类库。我正在使用 Element Host 在 Windows 窗体应用程序中使用它。现在在 WPF 用户控件中,我需要使用 MessageBox 显示一条消息。它正在工作,但在 Windows 窗体应用程序的主窗体上显示为无模式。我想将此消息框显示为模型。

请提供任何帮助。

编辑:

让我举例说明一下:我有“WindowsFormApp1”另一个是“WPFUserCtrlLib”,它是类库。它有名为“WPFUserCtrl”的用户控件,所以我有“WPFUserCtrl.xaml”和“WPFUserCtrl.xaml.cs”文件。在 WindowsFormApp1 中,我将 MainForm 命名为“Form1”。在 Form1 中,我使用 Element Host 使用“WPFUserCtrl”。现在有一些逻辑驻留在“WPFUserCtrl.xaml.cs”中说

所以这里我需要显示ErrorMsg。当显示此 MessageBox 时,它是无模式的,因为我可以访问“Form1”上的控件,例如菜单、按钮和所有控件。

0 投票
1 回答
564 浏览

c# - 将 MediaElement 添加到 windows 窗体错误 C#

嗨,我最近发现您可以使用 WPF 中的组件并添加到 windows 窗体中,只需创建它们,然后将其添加到窗体中作为元素主机

所以我想要做的是使用 MediaElement 创建一个视频播放器,我也知道你可以使用 Direct X 或使用 Windows Media 播放器为此我想自定义制作一些控件所以这是我的问题

当我尝试将媒体元素添加到我的 Windows 窗体中时,它给了我这个错误 在此处输入图像描述

这是我的 mediaelement wpf 代码

所以添加 mediaElement 不起作用或者我做错了什么,而且我在表单中添加了一个 WPF 滑块也只是说因为我不知道它是否会影响它

0 投票
0 回答
105 浏览

c# - 如何在 Windows 窗体中修复 Elementhost 内的区域?

我已经使用 ElementHost 在 Windows 窗体中集成了 WPF 控件。WPF 控件包含来自 3DS Max 的 obj 文件的 3D 视图。调整窗体大小时,ElelmentHost 内的内容显示超出指定区域。

是否可以避免这种情况,以便以不同的窗口大小显示相同的区域?

0 投票
1 回答
71 浏览

c# - 如何将 ContentPresenter 与 ElementHost 一起使用

我有

  • 三个 WPF 用户控件及其视图模型
  • 一个 WPF 容器,用于显示 WPF 用户控件之一
  • WinForm 用户控件

我要:显示不同的WPF UserControl,我设置的是WinForms User Control

结果我有这个: 在此处输入图像描述

我的代码有什么问题?

0 投票
1 回答
91 浏览

c# - WPF控件中的图片没有变化

我提到了这个,写了几乎相同的代码,但用不同的语言,它没有按预期工作!
我使用 winform(C++/Cli) 作为主机 & 'WPF User Control Libaray'(C#) 作为子控件。
使用 Winform 中的 ElementHost 组件在 Winforms 中集成 WPF 用户控件(PictureBox)。
基本上我想从winform按钮更改WPF控件中的图片。它编译并运行良好。
但唯一的问题是即使图片路径正确,图像也不会改变。

下面的代码在 winform button_click 事件中

下面的代码在 UserControl1.xaml.cs

下面的代码在 UserControl1.xaml

尝试在 xaml 代码中删除源图像,它没有效果

0 投票
1 回答
825 浏览

c# - 无法在 WinForm 中使用 WPF 控件填充整个空间

我创建了 Wpf UserControl 并将其托管在 WinForm 中。

如设计器文件所示,此 WPF 控件通过 HostElement 托管:

所以看起来一切都是正确的。您还可以看到 DockStyle 是 Fill。但是,WPF 控件不会填充整个 WinForm,并且始终显示为在 Designer 中设置和显示的大小。

我从 Canvas 和 Canvas 包含的 MediaElement 中删除了高度和宽度,但它没有任何效果......

如果有人能指出我在这里做错了什么,我将不胜感激 - 我是 WPF 的新手。

0 投票
0 回答
242 浏览

winforms - WinForms 应用程序中 ElementHost 所需的 CLR 异常 STAThread 属性

我有一个使用 Visual Studio 2010 的 WinForms VB 应用程序。我使用的是 WPF DocumentViewer,因此它由 ElementHost 控件托管。在我的 AppMain_Form.Designer.vb 中,执行后续(生成)语句时:

我得到一个异常(我必须为调试器启用 CLR 异常):

“调用线程必须是 STA,因为很多 UI 组件都需要这个。”

但是,在我对这个问题的研究中,我发现了以下内容:

1) 默认情况下,Windows 窗体应用程序是单线程的。

2) Main 过程是为 Windows 窗体应用程序自动生成的,它是隐藏的。

3) Main 过程可以手动编码,但这需要禁用应用程序框架,我认为这对于 Windows 窗体应用程序是相当必要的。

那么,如果 Windows 窗体应用程序默认为 SingleThreaded,为什么会出现此异常?如果没有,如果 Main 过程被隐藏,我如何将其标记为 STAThread?为什么我必须启用 CLR 异常才能捕获它?在启用 CLR 异常之前,这并没有出现在我的测试中,但是当我在 Visual Studio 之外运行我的应用程序时,它简要显示了一个关于创建主窗体的异常框,但在我获得任何详细信息之前,它已被我的闪屏,然后是我的主窗体。之后该应用程序正常运行。但是,我无法部署它,每次启动时都会显示异常消息。

0 投票
1 回答
382 浏览

c# - WinForm Hosted in WPF Mouse.getPosition not working

I have some element (ZedGraph) hosted in a wpf Window. I want to get the x and the y coordinate of my mousecursor. It works on the rest of the window but as soon as I hover over the Elementhost the numbers are frozen. I already found out that Elementhost does not pass the events, but I dont found a working solution to that Problem.

many thanks in advance for any hints on that problem