问题标签 [windowsformshost]

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 回答
168 浏览

wpf - WPF - Windows 窗体互操作

我对表单之间的互操作有点困惑。我有一个使用 DevExforms 开发的 c#.Net 应用程序。另一方面,我有一个 XNA 应用程序,我想将它用作 3d GUI。但是他们之间很难互动。当然它没有用,它也很丑陋。

所以我看到了一种使用 WPF 开发 3d 模型查看器应用程序的方法,但是 WPF 控件和 Windows 窗体控件需要 .Net Framework 4.5 才能在两者之间进行交互。但我必须使用VS2010。

所以我很困惑。我必须做什么。如何使用 Windows 窗体轻松开发 3d 应用程序,或者如何与我的应用程序交互任何平台。其实如果你是我你会怎么做?

0 投票
0 回答
324 浏览

c# - WPF与winform集成,捕捉事件

简短的问题:
如何在具有包含多个控件(例如按钮)的 win 表单面板的 WPF 应用程序中捕获事件并捕获每个按钮事件?

是否可以在 win 表单面板中添加 WPF 按钮并捕获它们的事件?

我有一个 WPF 应用程序(电影播放器​​)。
它从 3rd 方 API(视频)接收 winform 控件。
为了玩这个控件,我需要使用 WindowsFormsHost。
如果我想在控件上捕获事件,我必须在将控件添加到 WindowsFormsHost 之前注册事件。但是,如果我有许多控件的面板,则不会捕获所有事件..

我想要实现的是我可以在 win 表单控件上加载 WPF 停止/启动按钮。
谢谢在此处输入图像描述

0 投票
1 回答
750 浏览

c# - WindowsFormHost 绘制事件未触发

我在 WPF 应用程序中有一个带有 WindowsFormHost 的面板。最终我需要能够点击和绘制点。我让它在一个单独的 WinForm 表单中完全工作......但由于某种原因,当 Invalidate() 被调用时,绘制事件根本不会触发!当消息框出现在点击时,点击事件肯定会触发。即使没有窥视油漆。无法弄清楚为什么我的生活......这是代码。

XML:

C#

编辑:

为了进一步检查绘制事件是否是我将线添加g.FillEllipse(s,400,400,400,400);到点击事件中的问题,它成功地绘制了椭圆。

0 投票
1 回答
1450 浏览

wpf - 在数据网格中使用 WindowsFormsHost,超出滚动区域

在数据网格中使用 WindowsFormsHost 时,我的控件超出了网格的可滚动区域。

我尝试使用此处提到的解决方案,ScrollViewer 在 WPF WindowsFormHost 中不起作用

我还可以使用 ScrollableWindowsFormsHost 类将控件限制在滚动区域。然而,除非我在单元格内单击两次(第一次单击单元格上的焦点,第二次单击绘制我的组合框),否则我的 Winforms 控件(这是从 Winforms 组合框派生的控件)不会显示,它在窗口重绘时再次消失.

来自 xml:

来自 ScrollableWindowsFormsHost 的代码。

0 投票
1 回答
2418 浏览

wpf - 将新的上下文菜单项添加到在 WPF 中具有默认 ContextMenu 的 WindowsFormsHost

我们正在使用一些没有 WPF 等价物的 ActiveX 或 windows 窗体控件,所以自然我们使用 WindowsFormsHost 来托管这些控件。我们通常用一些通用控件(例如按钮)来制作一个 UserControl 来实现通用功能。一段 xaml 代码是这样的:

AxPivotTable 是一个 OWC(办公 Web 组件)控件。在另一个 UserControl 中,我们在 WindowsFormsHost 中添加了一个 ReportViewer。请注意,通常 AxPivotTable 或 ReportViewer 具有其默认上下文菜单,即使我没有添加任何 ContextMenu 项目。

到目前为止,我的自定义 ContextMenu 还没有显示(仍然显示默认的)。感谢这个问题,我发现我仍然需要在代码隐藏中捕获鼠标按下事件并设置

显示上下文菜单(虽然很奇怪)。

现在我的问题是,现在只有这个 Test1 ContextMenu 在这里。默认的 ContextMenu 将不再显示。正如我所提到的,我们想要的是在这些默认上下文菜单之上添加自定义。

0 投票
1 回答
788 浏览

wpf - 如何在 WPF 中的 WinForm/ActiveX(由 WindowsFormsHost 托管)控件自己的上下文菜单上添加上下文菜单项

我们正在创建一些 WPF UserControl,它将通过使用 WindowsFormsHost 来利用一些 WinForms 或 ActiveX 控件。例如,在一个 UC 中,我们有这样的代码:

ReportViewer 可以在 Microsoft.Reporting.WinForms 中找到。

在另一个 UC 中,代码是这样的:

AxPivotTable 可以在 AxMicrosoft.Office.Interop.Owc11 中找到

ReportViewer 和 AxPivotTable 控件都有自己的上下文菜单,其中包括许多使用功能。我想保留它们。但我还需要添加一些新功能。换句话说,我想设计一个增强的上下文菜单,默认上下文菜单是其中的一部分,而我的自定义菜单项是其他部分。

问题来了:我真的不知道在哪里添加我的自定义上下文菜单项。我试图将上下文菜单对象添加到 WindowsFormsHost。但结果是这个自定义菜单根本不会显示。我进一步将 WindowsFormsHost.ContextMenu.IsOpen 设置为 true,这一次的结果是我的自定义菜单将隐藏控件的默认上下文菜单。

我还尝试从代码隐藏中添加菜单项。例如,ReportViewer 派生自 WindowsForms(不是 WPF 程序集),它有一个名为 ContextMenu 的成员。但是当我检查 viewInstance.ContextMenu.MenuItems 时,我发现它实际上有零计数集合,这意味着默认上下文菜单在这个级别上不存在。那么我怎样才能找到默认的上下文菜单并添加我的自定义菜单项呢?

0 投票
1 回答
939 浏览

c# - 在 wpf 工具提示中使用 WindowsFormHost

我正在尝试在ToolTip. 下面是 Xaml 代码和ToolTip.

问题是如果我使用 windowsFormsHost 面板不会改变颜色,感觉就像ToolTip不知道它在那里。

我做对了吗?

(如果我能够更改颜色,那么我将使用它来显示相机的 liveFeed)

当我点击按钮时,它就在ToolTip那里,但它仍然是基本的。

如果我没有 Windows 窗体主机并使用 aStackPanel那么它可以工作。但我需要使用Panel.

xml:

C# :

感谢您的时间和帮助。

0 投票
1 回答
1100 浏览

.net - WindowsFormsHost 不能旋转。要抑制此错误,请处理 LayoutError 事件并将 ThrowException 设置为 false

我在 WPF 中有 VLC ActiveX 插件控件。

当我尝试应用一些动画时,我遇到了这个错误:

任何线索我们如何解决它?

0 投票
1 回答
136 浏览

.net - 如何获取 WPF WindowsFormsControl 的高度以填充包含的 StackPanel?

我有一个我试图在 WindowsFormControl 中托管的 winforms 自定义控件。我似乎遇到了一些问题,让控件的高度正常运行。

我有一个网格,其中包含一个 StackPanel,其中包含实际嵌入的 WindowsFormControl。我希望 WindowsFormControl 的高度占据 StackPanel 中的所有可用高度。

实际的 winforms 自定义用户控件的高度在填充 WindowsFormHost 中可用的高度区域时表现正确。

我不完全清楚发生了什么。

让这个行为正确的正确技术/技巧是什么?

谢谢,约翰B

0 投票
1 回答
1350 浏览

c# - 如何在datagridview中分割或分割单元格

我正在开发一个 Windows 窗体应用程序。在该应用程序中,我需要在侧 datagridview 列中添加一个 datagridview。从下面的教程中,我制作了一个 dgvcolumn。

http://social.msdn.microsoft.com/Forums/en-US/winformsdatacontrols/thread/0a63a483-5b15-40d6-afb4-8add6b4f244f

现在我需要将多个单元格合并为一个单元格,并希望将一个单元格拆分为多个单元格。谁能告诉我我该怎么做。